我正在使用 mysqldump 导出数据库,就像这样:
mysqldump -u root -ppassword my_database > c:\temp\my_database.sql
不知何故,它只导出了一个表格。我做错了什么吗?
试试这个。 通常有三种方法可以使用mysqldump -
为了转储一个或多个表的集合,
为了转储一个或多个表的集合,
shell> mysqldump [options] db_name [tbl_name ...]
一组一个或多个完整数据库
shell> mysqldump [options] --databases db_name ...
或整个MySQL服务器,如下所示:
shell> mysqldump [options] --all-databases
引用此链接:http://steveswanson.wordpress.com/2009/04/21/exporting-and-importing-an-individual-mysql-table/
要导出表,请从命令行运行以下命令:
mysqldump -p --user=username dbname tableName > tableName.sql
这将会把tableName导出到tableName.sql文件。
要从命令行导入该表,请运行以下命令:
mysql -u username -p -D dbname < tableName.sql
需要在tableName.sql文件的绝对路径前加上路径。此时该表将被导入数据库。
在这里,我将从名为myDB的数据库中导出3个表格,并将其存储在名为table.sql的SQL文件中。
mysqldump -u root -p myDB table1 table2 table3 > table.sql
如果您遇到以下错误
mysqldump: 1044 访问被拒绝,使用LOCK TABLES
一个快速的解决方法是向 mysqldump
传递 --single-transaction
选项。
因此,您的命令将像这样。
mysqldump --single-transaction -u user -p DBNAME > backup.sql
我做了这个,它运行得很好。所有数据库中的表都成功备份到.sql
文件中。
mysqldump.exe -e --databases -u<db name> -p<Password> -h<host name> <database name> --skip-lock-tables --column-statistics=0 > C:\test.sql
mysqldump -u root -ppassword -B my_database
- px1mp