mysql数据库导出db文件(利用mysqldump导出数据库详解教程 – MySQL大数据库导出命令必备)
我们在维护服务器的时候备份数据库用的什么方式?我们很多朋友应该是用的phpmyadmin直接客户端界面导出数据库 。这个方法对于小数据库是没有问题的 ,如果数据库较大 ,达到几百兆的时候你导出来的数据库可能有不完整,即便完整的话你无法导入有可能无法导入超时 。
当然 ,我们还可以利用其他的面板自带的数据库备份工具 。但是有些时候我们没有这些环境如果导出数据库呢?这里 ,我们可以介绍用到mysqldump命令 ,是比较好用的数据库备份导出命令 。
我们今天这篇文章就一起学习mysqldump的数据库备份命令 。
1 、导出单个数据库
mysqldump -u user_name -p db_name > dump-$(date +"%Y%m%d").sql各项参数:
-u 用于指定数据库用户名 ,通常是 root ,需要具备对目标数据库的读写权限 。
-p 指定数据库账号密码 。基于安全考量 ,一般不指定密码 ,运行命令后以交互方式输入 。若要指定密码 ,在 -p 后输入密码(注意是紧挨着没有空格) 。
db_name 备份数据库名称 ,这种写法不能同时备份多个数据库。如果用空格写了多个名称,则会被视为备份数据库下的表(第一名称是数据库 ,之后名称表示该数据库下的表名) 。
dump-$(date +"%Y%m%d").sql 将数据库导出到文件 ,这里文件名加了时间戳 。
2 、导出多个数据库
导出多个数据库用 --databases 参数指定,语法如下。
mysqldump -u user_name -p --databases db1 db2 db3 > dump-$(date +"%Y%m%d").sql当带了 --databases 和下面介绍的 --all-databases 参数 ,在转储输出前会写入 CREATE DATABASE 和 USE 语句 。这样在恢复数据时 ,如果没有同名数据库,它会先创建数据库 。并在恢复各个数据库时 ,通过 USE 语句设置默认数据库 ,以便将数据导入到同一数据库中。
3、导出所有数据库
备份所有数据库使用 --all-databases 参数 。
mysqldump -u user_name -p --all-databases > dump-$(date +"%Y%m%d").sql4 、添加定时备份数据库任务
0 0 1 * * /usr/bin/mysqldump --defaults-extra-file=/root/.my.cnf --user=root db_name > /root/dump-$(date +"%Y%m%d").sql这将每月备份一次数据库 ,文件存储在 /root 目录下 。
5 、恢复复原数据库
导入恢复单个数据库:
mysql -u user_name -p db_name < dump-backup.sql导入恢复单个数据表:
mysql -u user_name -p db_name < dump-table-backup.sql导入单个数据库或数据表时 ,目标数据库必须是已存在 。否则需要先创建数据库 ,创建语法如下 。
mysqladmin -u user_name -p create db_name当导入使用 --databases 或 --all-databases 参数导出的数据库文件 ,则不需要指定目标数据库 ,它会自动创建数据库 。
mysql -u user_name -p < dump-full-backup.sql创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!