Mysql的数据备份,还原与迁移

一、备份操作

备份的代码都在cmd命令下完成

1.备份数据库

最常用Mysqldump备份数据库(表),用Mysql恢复数据库(表)

命令格式:
mysqldump –h主机名或IP -u用户名 -p密码 -P端口号 数据库名>导出的文件名.sql

mysqldump  -uroot -proot teach>e:\bakup\teachdb.sql

2.备份数据表

命令格式:
mysqldump –h主机名或IP -u用户名 -p密码 -P端口号 数据库名 表名>导出的文件名.sql

mysqldump  -uroot -proot teach s> e:\bakup\datas1.sql

3.备份多个数据表

mysqldump -uroot -proot --databases teach --tables s c sc>e:\bakup\t3.sql

二、还原操作

还原的代码也都在cmd命令下完成

1.数据库的还原

命令格式:
mysql –h主机名或IP -u用户名 -p密码 -P端口号 数据库名<导出的文件名.sql

mysql  -uroot -proot teach<e:\bakup\teachdb.sql   

2.数据表的还原

mysql  -hlocalhost -uroot -proot teach<e:\bakup\datas1.sql   
mysql  -hlocalhost -uroot -proot db1<e:\bakup\t3.sql

三、迁移操作

迁移的代码也都mysql环境命令下完成

1.导出

语法格式:

select *
from teach.c
into outfile 'e:/bakup/t_c.txt' 
fields terminated by ',' 
optionally enclosed by '"'
lines terminated by '?';

2.导入

语法格式:

load data 
infile 'e:/bakup/t_c.txt' 
into table teach.c 
fields terminated by ',' 
optionally enclosed by '"' 
lines terminated by '?';

当你在玩成数据迁移时,你会发现ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option错误。出现这个问题的原因是mysql的secure_file_priv这个选项没有开启,或者这个选择了特定的文件路径,只有在这个路径下的文件才能导入导出mysql。

你可以先在mysql命令下输入一下代码来查看当前的存储路径。

show variables like "secure_file_priv";

在这里插入图片描述
如果他给你返回的是null,说明mysql中就没有设置secure_file_priv这个选项。如果这个参数是个特定的文件路径,就说明文件只有在这个路径下才能将它导入导出到mysql。参数secure_file_priv的值及含义如下:
在这里插入图片描述
如果要修改这个,需要先到c盘,先找到ProgramData这个文件夹,如果没有那就是隐藏了,你需要打开隐藏文件夹。到c盘,选择上方的组织,找到文件夹和搜索选项,选择查看继续往下找将隐藏文件夹改为显示隐藏文件夹。
在修改my.ini文件时,要确保所有的mysql工具都已经关闭
然后在按照上方的路径去查找my.ini文件夹,在里面找到secure_file_priv,把他的值改为“”就可以了。
在这里插入图片描述
需要重启一下mysql服务
重启mysql之后我们再次打开mysql,输入show variables like ‘secure_file_priv’; 就可以看到变量里的路径已经修改了,现在就可以导入导出数据了。

如果想获取更多有关python的信息,和想玩python制作的小程序,可以关注微信公众号(dreamspy)。我们一起用python改变世界,一起用python创造梦想。

在这里插入图片描述

发布了43 篇原创文章 · 获赞 11 · 访问量 5424

猜你喜欢

转载自blog.csdn.net/jiangSummer/article/details/103279593