I need to move a mysql database that is about 17 GB that is on a Cpanel/Centos based server that I do not have root access, to a Centos server that I have full root access. I do have limited SSH on the Cpanel with mysqldump available(I think).
When doing a test database download from the Cpanel Mysql backup utility, the server ran out of ram and shut down. I only did about 250 MB as a test for the download.
My choices seem to be:
Master/Slave replication(I don't have root so that seems out) Rsync the database files(I don't have root so that seems out) Mysqldump PhpMyadmin(Crashes the server when the tables have too many rows)
At this point I am planning on doing a mysqldump from the Cpanel server. I don't want to have it locked down for a super long time, since our website is live. I saw that I can use the mysqldump with the -r and it will cause the buffer to go row by row instead of loading the whole table into the buffer. Some of the tables have 2 million rows. Most are under 50 thousand rows.
What is the best way to move the database without locking down the system or causing the server to crash because of the ram being overloaded?
Both servers have powerful CPU's and 16 GB of ram with fairly current MySql versions.
Would you recommend a table by table dump or is that even necessary?
I might be able to get the current Cpanel host to setup my.cnf for me to set up the master slave connection(Not sure about that one though)
SELECT VERSION();
) ? 2) Is all the data InnoDB ? 3) Can you stop all writes to the database during maintenance window ? 4) Do you have Linux root access, mysql root access, or neither ?server_id
is explicitly set inmy.cnf
? If you have mysql root access, please runSHOW GRANTS;
. Does the output ofSHOW GRANTS;
sayGRANT ALL PRIVILEGES ON *.* ...
?server\_%
.* TO Checking on server_id