If you find yourself in a situation that requires changes to your site, and your developer isn't available to help, DreamHost's skilled support team may be able to assist you for a small fee. You can find more information about supported services and associated costs in the DreamHost Professional Services article.
Overview
There is no SSH access to a Shared or Private MySQL server. All troubleshooting must be done in the DreamHost panel or within your software.
If you require SSH access, you must upgrade to a Dedicated Server or DreamCompute where the database is hosted on the same machine.
Problems logging in
Updating 'Allowable hosts'
Also, make sure that your current IP address is added to the database's allowable hosts. You can manage this setting on the MySQL Databases page.
To the right of your database, click the username. On the next page you can see the 'Allowable hosts' field.
In the image above, you would replace xxx.xxx.xxx.xxx with your computer's IP address. You can find it on a site such as whatismyipaddress.com. The panel also displays your current IP address in this section.
Reboot the server
Due to the nature of shared MySQL hosting, it's not possible to reboot your MySQL server. The only way this would be possible is if you were on a Dedicated Hosting plan. On a Dedicated Server, the MySQL server is hosted on the same machine allowing you full root access.
Error messages
"The used command is not allowed with this MySQL version"
This error may occur when using the LOAD DATA LOCAL INFILE statement on Ubuntu 12.04 webservers. A change in the mysql library from Debian to Ubuntu requires code changes to work around this error and allow your statement to execute.
-
mysql command line
- Add the --local-infile flag to your mysql connection statement, such as:
[server]$ mysql --local-infile -h HOSTNAME -u USERNAME -pPASSWORD DATABASENAME
-
PHP mysql_connect()
- Add 2 extra params to mysql_connect, a false for "new link" and then a client flag of 128 or CLIENT_LOCAL_FILES:
mysql_connect('HOSTNAME','USERNAME','PASSWORD', false, 128);
-
PHP mysqli_connect()
- Initialize mysqli first via mysqli_init, and use mysqli_options() to specify local infile as true before connecting to the mysql server:
$link = mysqli_init();
mysqli_options($link, MYSQLI_OPT_LOCAL_INFILE, true);
mysqli_real_connect($link, 'HOSTNAME','USERNAME','PASSWORD','DATABASENAME');
-
PERL DBI
- The mysql_local_infile param can be added to your data source name variable, or directly in DBI->connect:
$dbh = DBI->connect("DBI:mysql:database=DATABASENAME;host=HOSTNAME;mysql_local_infile=1", "USERNAME", "PASSWORD");
Errors importing a database with mysqlimport
DreamHost has implemented some newer features in MySQL 8, which may cause an error to occur when using the command line program mysqlimport. For more details, see the MySQL Overview page.