The easiest way to back up MySQL database

Source: Internet
Author: User
Tags mysql mysql client socket sql error table name mysql database phpmyadmin port number
mysql| Backup | data | Database using MySQL database backup, and very formal database backup method, with other database servers have the same concept, but have not thought, MySQL will have a simpler use of the file directory backup method, but also quick to have good.

One, the data backup shortcut
Since this method has not been validated by official documents, we are tentatively called experiments.

Objective: To backup a MySQL database in the Hosta host Testa and revert to the HOSTB machine
Test environment:
Operating system: Winnt4.0,mysql3.22.34,phpmyadmin 2.1.0

Install MySQL database in hosta and build Testa database
HOSTB machine installs MySQL database, no testa database


Method steps:
Start phpMyAdmin View the list of databases in Hosta and HostB, and there are no Testa databases in HostB
Locate the MySQL installation directory in Hosta and locate the database directory data
In my experimental environment, this directory is
C:mysqldata
Find a subdirectory of the corresponding database name
C:mysqldatatesta
Paste copy into HostB's data directory, which is the same as the Hosta file in the HostB MySQL directory

Refresh HostB phpMyAdmin Look at the list of databases, we see that Testa has already appeared, and make a query to modify the operation is normal, backup restore success

Test conclusion: MySQL database can be saved by file, backup, restore as long as the corresponding file directory restore, no need to use other tools to back up.

Ii. Formal approach (official recommendation):

Export the Mysqldump tool that you want to use with MySQL, basic usage:

mysqldump [OPTIONS] database [tables]

If you do not give any tables, the entire database will be exported.

By executing mysqldump--help, you can get the options table supported by your mysqldump version.

Note that if you run mysqldump without--quick or--opt option, mysqldump will load the entire result set into memory before exporting the results, if you are exporting a large database, this could be a problem.

Mysqldump supports the following options:

--add-locks
Add lock tables before each table is exported and then unlock table. (in order to allow faster insertion into MySQL).
--add-drop-table
Add a drop table before each create statement.
--allow-keywords
Allow creation of column names that are keywords. This is done by means of a table name in front of the column name.
-C,--complete-insert
Use the full INSERT statement (with the column name).
-C,--compress
If both the client and the server support compression, compress all the information between the two.
--delayed
Inserts a row with the insert delayed command.
-E,--extended-insert
Use the new multiple-line insert syntax. (Gives a tighter and faster insert statement)
-#,--debug[=option_string]
Trace the use of the program (for debugging).
--help
Displays a help message and exits.
--fields-terminated-by= ...
--fields-enclosed-by= ...
--fields-optionally-enclosed-by= ...
--fields-escaped-by= ...
--fields-terminated-by= ...
These selections are used with the-T selection and have the same meaning as the corresponding load DATA infile clause.
The LOAD DATA infile syntax.
-F,--flush-logs
Before you start exporting, wash the log files in the MySQL server.
-F,--force,
Even if we get a SQL error during the export of a table, continue.
----H,--host=.
Export data from the MySQL server on the named host. The default host is localhost.
-L,--lock-tables.
Lock all tables for starting export.
-T,--no-create-info
Do not write table creation information (CREATE TABLE statement)
-D,--no-data
Any row information that does not write to the table. This is useful if you want to export only the structure of a table!
--opt
--extended-insert--lock-tables with--quick--add-drop-table--add-locks.
Should give you the fastest possible export for reading into a MySQL server.
-pyour_pass,--password[=your_pass]
The password to use when connecting to the server. If you do not specify the "=your_pass" section, the mysqldump requires a password from the terminal.
-P Port_num,--port=port_num
The TCP/IP port number to use when connecting to a host. (This is used to connect to a host other than localhost because it uses a UNIX socket.) )
-Q,--quick
Do not buffer queries, export directly to stdout; use Mysql_use_result () to do it.
-s/path/to/socket,--socket=/path/to/socket
The socket file used by the localhost when it is connected (it is the default host).
-T,--tab=path-to-some-directory
For each given table, create a Table_name.sql file that contains the SQL create command, and a table_name.txt file that contains the data. Note: This works only when Mysqldump is running on the same machine that the mysqld daemon is running. The format of the. txt file is based on the--fields-xxx and--LINES--XXX options.
-U user_name,--user=user_name
The user name that MySQL uses when connecting to the server. The default value is your UNIX login name.
-O var=option,--set-variable var=option
Sets the value of a variable. The possible variables are listed below.
-V,--verbose
Verbose mode. Print out more information about what the program is doing.
-V,--version
Print version information and exit.
-W,--where= ' where-condition '
Only the selected records are exported; Note that the quotation marks are mandatory!
"--where=user= ' JIMF '" "-wuserid>1" "-wuserid<1"

The most common mysqldump uses a backup that might make the entire database:

Mysqldump--opt Database > Backup-file.sql

But it's also useful for enriching another MySQL database with information from one database:

Mysqldump--opt Database | MySQL--host=remote-host-c database

Since mysqldump is exporting complete SQL statements, it is easy to import data into the MySQL client program:

Mysqladmin Create Target_db_name
MySQL Target_db_name < Backup-file.sql

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.