使用mysqldump备份MySQL数据库
2016年11月24日
18:39
步骤
找到MySQL的安装目录,在里面的bin目录运行cmd
mysqldump -h172.23.8.15 -ulp -p -P3305 --databases lobbyplatform --routines --add-drop-database --events > E:\lp_new.sql
如果出现下面的报错
Got error:1142: SELECT,LOCK TABL command denied to user ‘root’@'localhost’
for table ‘cond_instances’ whenusing LOCK TABLE
就在命令行再加一个参数
--skip-lock-tables
这里面要注意,导出来的存储过程里面有DEFINER,就是这个存储过程的定义者。如果DEFINER是root,那么后面用权限低的用户去执行这个存储过程的话,会提示没有权限。所以要把DEFINER全局替换为空。
进入MySQL控制台
mysql -h172.23.8.15 -ulp -p -P3305
在MySQL控制台
use test;
source E:\lp_new.sql;
一些说明
--databases dbname1 dbname2 |
要导出的数据库,可以有多个 |
--routines |
导出存储过程和函数 |
--add-drop-database |
加上这个参数后,会在导出文件前面加上一句 drop database if exists dbname |
--events |
导出事件 |