= How do I copy my MySQL database from one site to another? = There are two methods you can use. If both your source database and the target database are on May First/People Link servers, then both methods are available to you. If either the source or the target are on other servers, then they may or may not work depending on the software and access provided by the other provider. == Using phpMyAdmin == If your database is relatively small (less than 5 or 10 MB), you can use [wiki:phpmyadmin_link phpMyAdmin] to export your database from one site and then import it into another. For this method to work, both the source and target database servers must have the phpMyAdmin program installed. All May First/People Link servers have phpMyAdmin installed (see our [wiki:phpmyadmin_link our phpMyAdmin FAQ to learn how to access it]). You will need the ''database'' username and password for each site (this may be different from the ssh/sftp/ftp username and password for the site). Please see our [wiki:database_password faq on retrieving your database password] if you don't know it. * Login to phpMyAdmin with the the source database username and password. * Click the export button * Select the database you want to export * Check the box that says "Add DROP TABLE / VIEW / PROCEDURE / FUNCTION" * Click Go. * You will see a big textarea box containing a text representation of your database. One of the first lines will be: "CREATE DATABASE `name_of_source_db`". That line should be deleted. * The second line will be: "USE `name_of_source_db`". Change the name of the source database into the name of the target database. * Copy and paste the output into a file and save the file. * Logout and log back in again with the ''target'' database username and passwrd * Click Import. * Click Browse and find the file you just saved. * Click Go. == Using the Command Line and Secure FTP == For large databases, you may need to use a more reliable method. You will need to be ready to access both the source and target sites via both [wiki:secure_shell secure shell (ssh)] and [wiki:sftp Secure FTP]. You will also need to know the name of both the source and target database names. * [wiki:secure_shell Secure Shell] into the source site server and run the following command to create a dump of your database into a file called name-of-source-database.sql. Replace "name-of-source-database" with the actual name of your source database: {{{ mysqldump name-of-source-database > name-of-source-database.sql }}} * [wiki:sftp Secure FTP] into the source site server and download the file name-of-source-database.sql to your computer * [wiki:sftp Secure FTP] into the target site server and upload the file * [wiki:secure_shell Secure shell] into your target server and run the following command to import the source database into the target database. Replace "name-of-target-database" with the name of your actual target database: {{{ mysql name-of-target-database < name-of-source-database.sql }}}