Life in code, apps and OS's

Archive for the ‘My Projects’ Category

I have now started putting a new website together for Zantastico on Sourceforge, People can now download and get infomation regarding Zantastico for both zPanel and CorePanel.

The website is located here: http://zantastico.sourceforge.net

Advertisements

Now a few of my projects are getting much bigger and the need for having dedicated Database servers are now more appealing than ever.

With MySQL when setting it up I noticed that when trying to access a remote database from an application server, it would takes ages to respond/connect to it.

After searching around the web, I have found what appears to be the solution…

It appears to be that the MySQL server lookups hostnames for authentication EVEN IF you are using for example: remoteuser@231.23.65.23 so to speed up remote connections to your remote database servers try adding the following line…

skip-name-resolve

To your MySQL configuration file (my.ini/my.cnf) and then be sure to reload (restart) the MySQL database server.  The ‘[mysqld]’ section of the my.cnf file now looks like this:

[mysqld]
port = 3306
socket = /tmp/mysql.sock
skip-locking
skip-name-resolve

From Microsoft Windows this can be done from the ‘Services’ window in ‘Administrative tools’ or in Debian/Ubuntu entering this command:

/etc/init.d/mysql restart

The above addition will ONLY work if you are using IP Address or ‘%’ for the Database User accounts and will ofcourse disable the ability to use user accounts with the hostname eg. remoteuser@server2.example.com.

This was written by him (Harry Fuecks).. Not me, Im just posting this on my blog to spead the excelent tutorial and to keep it for future reference.

In case you missed it, yesterday Oracle announced a free (as in beer) version of their database—Oracle 10g Express Edition (XE)—basically a “lite” version—some industry analysis here. Significance of this move aside, more interesting is having a play. Managed to get the equivalent of a “Hello World” from PHP to Oracle up in under 1.5 hours today (ran into a specific glitch that required a re-install otherwise would have been less time). Here’s how…

Download is available at here. Be warned you’ve got a number of links to follow, an online license form to agree (check all the boxes) and finally a registration to fill in, before you get to the actual download. The download itself is about 150Mb and your system will need at least 250Mb RAM available to actual run the DB.

In my case installed it under Windows XP. There’s also a Linux version which I’ll be trying under Ubuntu later this week (had some hard disk issues recently which meant reinstall everything). Nothing available for OSX yet (the standard Oracle DB does support OSX though, so expect it’s a matter of time).

Once you’ve downloaded it, run the installer. It will ask you for a password for the “systen” user (think “root” user) which you should make sure you remember. The rest of the installation is just a matter of clicking “Next”. When finished it fires up a browser so you can login to your local instance of HTMLDb—something roughly equivalent to phpMyAdmin. In general, if you’ve ever tried installing the full Oracle database, this installation is breeze by comparison (not even a Java based installer—InstallShield I believe but could be wrong).

To login, you need the username “system” and the password you entered in the install process. You then need to following the instructions provided in the “Getting Started” guide (the installer adds a link to the guide on your start menu), in particular how to enable the “HR” user.

With that done, the next step is PHP. First things first you need to create a couple of environment variables (Control Panel > System > Advanced > Environment Variables );

  • ORACLE_SID = XE (…think of this as the name of your database)
  • ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server (…assuming a default installation path)

If you’re running Apache as a Windows service, the easiest thing to do now is reboot Windows.

Now edit your php.ini and uncomment extension=php_oci8.dll (I assume here you have extension_dir pointing at the right place)—note I’m running PHP 5.0.5 and the code below reflects that. Restart Apache and check out your phpinfo(). If you don’t get error messages about being unable to find php_oci8.dll, all is probably good. If you do get that error message, either the dll really can’t be found (check it exists in your extension_dir) or the above two environment variables are incorrectly set (or Apache is running as a service and you haven’t yet rebooted Windows).

Assuming all went well and you can see the OCI8 extension listed by phpinfo(), here’s something like a “Hello World”…

<?php 
$conn = oci_connect('hr','hr'); // This assumes
 you followed the Getting Start guide... 

$sql = "SELECT * FROM employees"; 

$stmt = oci_parse($conn, $sql); 

oci_execute($stmt); 

echo '<pre>'; 

while ( $row = oci_fetch_assoc($stmt) ) { 
  print_r($row); 
} 

echo '</pre>'; 
?>

Oracle has a bunch more info for PHP developers here.

From reading around and the little playing I’ve done, apart from the resource restrictions (one db per system, 1GB or mem usage max, 4GB database size max), it seems to have all the functionality as a normal Oracle DB (would be interested to hear more info on that if anyone has some).

Note that glitch I encounted, which may help non-US users, was I first attempted installing with Windows set to Swiss German as preferred language, which led to an ORA-27101 when I tried to login with SQL*Plus (and HTMLDb wouldn’t start). Switching to US English (Control Panel > Regional Settings > make everything “US English” on all tabs) solved this after a re-install.

Anyway—overall a pleasant installation experience. Oracle have definately “worked it out” in making getting started pain-free. Whether this will result in a big uptake amongst those that might otherwise choose an Open Source DB is hard to say. With the resource restrictions placed on the use of Oracle XE I doubt it’s really an option for shared hosts but it could be useful for software vendors who need to distribute a DB with their products. For developers it’s certainly a good place to start getting to know Oracle.

The original tutorial can be found here: http://www.sitepoint.com/blogs/2005/11/01/oracle-10g-xe-and-php/

Recently I’ve been bord and can’t think of any different peice of software to develop that I haven’t already developed. So as im interested in PHP and write alot of my web applications using this powerful, C++ style programming language, I have decided to develop a new style of USENET.

The system and idea behind its processes is simple and are as follows:-

  • Users can post messages anonymously
  • Messages can be replied to and are shown as threads
  • Users can search messages and replies
  • The system is completely search engine optermised, Therefore all documents are primarily found and searched from such search engines as Google and Yahoo! Search.

The database will be powered by Oracle 10g Express Edition.

Really this is just a simple project that I am going to undertake to educate myself with programing PHP and using Oracle 10g for the database backend.

Ok everyone, I want you to all check out my latest project, Its an online gaming community developed by me, my brother, and best mate Dave.  Please all be sure to go and check it out, Also if you could go and register on the forums and say hi 🙂

For those of you who like MMORPG’s (Online Role Playing Games) we are hosting a game called Battle for Pallentia, Its a free web-based MMORPG… its awesome, feel free to check that out also, it can be found at:-

BNA Online Gaming (http://gaming.bnasystems.co.uk/)

Also I would like to welcome any feedback too 🙂

My latest idea…

Now that I am running my own company and am trying to earn a living. I am planning on developing a new version of Zantastico, This will be called ‘ZantasticoX’ this will be a premium module for Zpanel software. Zantastico is a script deployment (like installer) for Zpanel.

ZantasticoX will cost approx £20 (GBP) per server, The software is licensed to the person/company who purchases it. The module will contain loads of new and updated exsisting packages as well as an automated installer and improved GUI.

I am currently researching if this product would intrest the Zpanel community and whether people would pay for such software. If you are interested please post your comments at the Zpanel forums in the thread that I have created asking for feedback, The thread can be found here:-

http://thezpanel.com/forums/viewtopic.php?f=10&t=3096

I have now released a new ‘enterprise’ editon of the well known ‘Tyger Bug Tracking System’, It contains many new features including md5 or sha1 password encryption, advanced bug filtering, advanced internal mail system and much, much more.

You can purchase TygerPRO for £20.00 GBP or for an extra £2.50 you can purcahse it on CD-ROM and have it sent to you.

If you would like to find out more please visit:- http://www.bnasystems.co.uk/tygerpro



  • How To Dyndns Ubuntu | Order Goods: […] DynDNS Client Setup on Ubuntu | Life in code, apps and OS’s – May 18, 2008  · 7 Responses to "DynDNS Client Setu
  • lizrandolph10886: Wonderful article! We are linking to this particularly great post on our website.nKeep up the great writing. Click
  • waseem Ahmad: Dear. i have a separate application server and a separate mysql database server. when i want to access the application server to login from the local