MySQLDump是一款非常高效的数据库备份工具,可用于快速备份单个数据库、多个数据库,甚至服务器上的所有数据库。使用它之前,您需要有Shell访问权限以及对应的MySQL用户登录凭据。本期小编将指导大家使用MySQLDump快速备份和恢复数据库。
要备份单个数据库,可以通过SSH登录到服务器,并运行以下命令:
mysqldump -u 用户名 -p[用户密码] 数据库名 > 备份文件.sql
mysqldump -u root -pABC123 exampledb > exampledbdump.sql
执行后,备份文件(.sql)将保存在您当前的工作目录中。您也可以指定绝对路径,例如:
mysqldump -u root -pABC123 exampledb > /root/exampledbdump.sql
如果需要备份两个或更多数据库,可以在命令中指定--databases
参数,并列出需要备份的数据库名称。注意,执行此操作的数据库用户需要具备访问所有列出的数据库的权限。
mysqldump -u 用户名 -p[用户密码] --databases 数据库1 数据库2 数据库3 > 备份文件.sql
mysqldump -u root -pABC123 --databases exampledb sampledb testdb > exampledb_sampledb_testdb.sql
如果想备份服务器上当前所有的数据库,可以使用--all-databases
参数。
mysqldump -u 用户名 -p[用户密码] --all-databases > 备份文件.sql
mysqldump -u root -pABC123 --all-databases > all-dbs.sql
当需要还原数据库时,可以使用以下命令进行操作:
mysql -u 用户名 -p[用户密码] 数据库名 < 备份文件.sql
mysql -u root -pABC123 exampledb < exampledbdump.sql
注意事项:
mysql -u 用户名 -p[用户密码] -e "CREATE DATABASE 数据库名;"
Access denied
错误,请确认用户权限是否足够。必要时,可以通过以下SQL命令授予权限: GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'主机' IDENTIFIED BY '密码';
FLUSH PRIVILEGES;
--default-character-set=utf8mb4
参数以确保数据的完整性: mysqldump --default-character-set=utf8mb4 -u 用户名 -p[用户密码] 数据库名 > 备份文件.sql
mysqldump -u 用户名 -p[用户密码] 数据库名 | gzip > 备份文件.sql.gz
gunzip < 备份文件.sql.gz | mysql -u 用户名 -p[用户密码] 数据库名
以上是使用MySQLDump进行数据库备份与恢复的完整指南,希望对您有所帮助!