如何使用mysqldump命令行实用程序完成mysql数据库的备份? 我尝试了以下命令:
mysqldump -u username -p password db1 > backup.sql
它给出了错误,就像你在SQL语法中有错误。请帮助..
答案 0 :(得分:1)
尝试这样 - (删除-p和密码之间的空格)
mysqldump -u username -ppassword db1 > backup.sql
了解更多信息:http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html
答案 1 :(得分:0)
备份:#mysqldump -u root -p[root_password] [database_name] > dumpfilename.sql
恢复:#mysql -u root -p[root_password] [database_name] < dumpfilename.sql
参考:http://www.thegeekstuff.com/2008/09/backup-and-restore-mysql-database-using-mysqldump/
答案 2 :(得分:0)
如果您要进行COMPLETE
备份,则需要添加--all-databases
。
喜欢这个
mysqldump -uUserName -ppassword --all-databases --routines > "fulldatabase.sql"
请注意,在-uUserName和-pPassword之间不需要空格。
此外,如果您在Mysql中使用PORT
,则必须定义类似
mysqldump -uUserName --password=password -P yourportnumber --all-databases
--routines > "fulldatabase.sql"
这可确保所有存储过程也被转储到文件中。
答案 3 :(得分:0)
您可以指定mysqldump
将整个备份视为:
mysqldump -u root -p --all-databases > alldb_backup.sql
如果您认为转储文件太大,您也可以以ZIP格式导出:
mysqldump -u root -p --all-databases | gzip -9 > [alldb_backup.sql.gz]
答案 4 :(得分:0)
如果是整个数据库,那么:
$ mysqldump -u [uname] -p[pass] db_name > db_backup.sql
如果是所有数据库,那么:
$ mysqldump -u [uname] -p[pass] --all-databases > all_db_backup.sql
如果是DB中的特定表,那么:
$ mysqldump -u [uname] -p[pass] db_name table1 table2 > table_backup.sql
您甚至可以使用gzip自动压缩输出(如果您的数据库非常大):
$ mysqldump -u [uname] -p[pass] db_name | gzip > db_backup.sql.gz
如果您想远程执行此操作并且您可以访问相关服务器,那么以下操作(假设MySQL服务器位于端口3306上):
$ mysqldump -P 3306 -h [ip_address] -u [uname] -p[pass] db_name > db_backup.sql