相关疑难解决方法(0)

在Mysqldump中跳过或忽略定义器

我想知道我是否可以阻止mysqldump插入此命令

/*!50017 DEFINER=`root`@`localhost`*/
Run Code Online (Sandbox Code Playgroud)

或者,如果我之后必须用sed做,例如

谢谢!

mysql mysqldump database-backups

7
推荐指数
1
解决办法
6669
查看次数

恢复MySQL数据库时,"无法在系统表上创建触发器"错误

我在AWS上安装了一个大型数据库几个月,但由于它开始变得昂贵而将其取消了.

现在,我的硬盘上有一个32GB的文件,我在关闭运行在实例上的MySQL数据库之前导出了该文件.

我想在我的笔记本电脑上将400万行左右导入我的本地MySQL.

使用MySQL Workbench,我试图做到这一点.但首先,我在本地重新创建了完全相同的模式(只有3个表).然后,使用数据导入选项,我选择"从自包含文件导入",并指向我的文件.我让它撕裂 - 只是为了收到这个令人沮丧的消息作为回应:

01:56:30 PM Restoring /home/monica/dumps/Dump20160406.sql
Running: mysql --defaults-file="/tmp/tmpMJpTQj/extraparams.cnf"  --protocol=tcp --host=127.0.0.1 --user=root --port=3306 --default-character-set=utf8 --comments --database=my_db  < "/home/monica/dumps/Dump20160406.sql"
ERROR 1465 (HY000) at line 488: Triggers can not be created on system tables  
Operation failed with exitcode 1
Run Code Online (Sandbox Code Playgroud)

看起来触发器存在一些问题?首先,我有点困惑,因为我的数据库从来没有任何触发器开始.

为了排除故障,我发现了他的SO问题,我尝试了建议 - 我编辑了my.conf文件,但它没有任何区别.

其他搜索让我空白.我找不到这个错误真的没什么.

如果有人有任何建议,那将是伟大的.谢谢.

编辑

我在@Solarflare的评论中使用了一些建议并使用了这个声明:

mysql -u root -p for_import -o < /home/monica/dumps/Dump20160406.sql

实际上,我发现了一个很酷的实用程序,名为Pipe Viewer,它提供了一个进度条 - 视觉证明(我希望)实际上发生了一些事情.所以我重写了这一行:

pv /home/monica/dumps/Dump20160406.sql | mysql -u root -p -o for_import

果然,看起来事情正在发挥作用,大约5分钟后,导入完成了:

34.1GB 0:08:19 [69.9MB/s] [==================================>] …

mysql

6
推荐指数
1
解决办法
3581
查看次数

标签 统计

mysql ×2

database-backups ×1

mysqldump ×1