MySQL

From HE FAQ
Revision as of 12:43, 19 October 2012 by Galperin (Talk | contribs)

Jump to: navigation, search

This information only pertains to Hurricane Electric's Shared Web Hosting package. There may be different information in our other categories.

Can I use MySQL on your server?

All new accounts come with a mysql database.

The database name is the same as your account name, and each account is allowed only one database per account.

You can create as many tables as you need within the database and you may use table name prefixes if needed.

How do I access my database?

Your Account Database is already initialized by default and ready for your use.

There are many MySQL-compatible database programs available that you can use. Enter your server's name as the server or host name. Your user name and database name are both the same as your HE account name, and your MySQL password as the password (which should be different from your admin/shell password).

You can also manage your database via SSH. After logging in with ssh, type: mysql -p . It will prompt you for the database password.

You can also access it with the following commands:

     mysql -u my_user_name --password=my_password
     mysql -u my_user_name -p 

Again, your user name and database name are both the same as your HE account name.

How do I change my mySQL password?

You can set your MySQL password in http://admin.he.net. Log into your account and click on "Issue New Password". Re-enter your admin password in the "Password" field (unless you want to change it, too), and enter your new MySQL password in the "MySQL Password" field.

Alternatively, you can change your password from within MySQL (if you know your current one). First, log in to your mySQL database from a shell prompt. Then issue the following command:

set password=password('new_password');

where new_password is the new password you have selected.

Example

set password=password('charlie1');


What is the mysql port number?

The port is the default standard port: 3306. Most programs like PHP and Perl DBI will take this port if it is not specified.


How do I backup or transfer my database?

To backing up and restore your database using SSH, use the mysqldump command:

     mysqldump -ppassword DatabaseName > db.sql 

('db.sql' is the name of your backup dump file, which you can change to whatever name you choose)

That backs up the whole database in standard SQL text format. Both the structure (like CREATE table command) and data (like INSERT command) statements, can be backed up separately, which is usefull in many cases. Check:

     mysqldump --help

for all the command line options.

To restore the dump, just type:

     mysql -p dbname < db.sql

Note that the structure dump won't work if tables already exist. The backup will not change or replace the structure.

For the data dump (the INSERT commands) it will append any new data if it does not yet exist.

If you have a database that is in frequent use, such as one linked to a dynamic web interface being updated by your web site visitors, it is a good idea to make a daily backup of the data.

To transfer a database, create the dump as described above, use SFTP, SCP or rsync to upload it on the second server, and then restore it as above.