首页 > 代码库 > 在备份和导入mysql数据库遇到的几个问题
在备份和导入mysql数据库遇到的几个问题
一、怎么导出和备份
1、普通方法,运用工具或者命令直接导出sql脚本,以navicat为例,直接选中数据库,转储sql文件
问题:当有视图或者函数执行失败时不好处理
2、视图函数和表数据分开导出
以navicat为例:
①先创建一个备份,包含视图和表:直接点击数据库下面的备份,然后新建备份。
②生成完备份之后,直接选择提取sql,提取的时候可以选择是表、视图、或是函数,这样就把表和视图脚本分离开了
二、生成完导出和备份的sql文件之后就是导入了,这里解决导入过程中遇到的几个问题:
1、error :mysql server has gone away
报这个错的原因很多,最有可能的一个:
你的sql查询文件太大了,需要修改mysql配置,直接在my.ini文件的mysqld节点下修改:max_allowed_packet=16777216就好了。
2、error:the user specified as a definer (‘root‘@‘%‘) does not exist
这是由于当前用户执行某些sql时权限不足导致的,直接赋予当前用户所有权限就行了:
grant all privileges on *.* to root@"%" identified by ".";
flush privileges;
注意:导入过程中有可能出现多个数据库相互依赖和多个视图相互依赖的情况,这要调整执行顺序方能正确完成导入。
在备份和导入mysql数据库遇到的几个问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。