zoukankan      html  css  js  c++  java
  • mysqldump 导出的参数问题

    前段时间用mysqldump导出sql,由于不太熟悉mysqldump出现了一大堆问题,其中一个触发器导出问题折磨了我好久,这里记载下免得忘记。

    1 $cmd = "mysqldump.exe  --user=root --password=123456 --opt --skip-comments datas scheme >D:\sql\scheme.sql";
    2 system($cmd);

    这里导出datas数据库的scheme表的sql 去掉注释 也默认导出触发器,但用phpmyadmin 导入sql时(80多个表 10个表有触发器 wamp环境 php5.3.13 mysql5.5.24)老出现个别表导入报错,而且固定3个表的触发器无法导入(查看sql 文件能看到有触发器)而且报错行数也指向触发器。

    后面把导出参数换为

    --compact 去掉注释和头尾等结构。相当于选项:--skip-add-drop-table  --skip-add-locks --skip-comments --skip-disable-keys

    1 $cmd = "mysqldump.exe  --user=root --password=123456 --opt --compact datas scheme >D:\sql\scheme.sql";
    2 system($cmd);

    问题依旧没有得到解决,一度以为是数据或触发器出错了。

    于是抱着试一试的态度我把导出参数改了一下变为:

    1 $cmd = "mysqldump.exe  --user=root --password=123456 --opt --opt --skip-comments --skip-disable-keys --skip-set-charset datas scheme >D:\sql\scheme.sql";
    2 system($cmd);

    居然phpmyadmin 可以导入了 触发器也不少了。 问题解决但不清楚怎么回事难道是 --skip-set-charset ?

    这里记下。

  • 相关阅读:
    正向代理和反向代理
    python的reduce,map,zip,filter和sorted函数
    sed和awk的简单使用
    nginx+uWSGI+django+virtualenv+supervisor发布web服务器
    nginx负载均衡
    nginx入门与实战
    python开发之virtualenv与virtualenvwrapper讲解
    Linux下的python3,virtualenv,Mysql、nginx、redis安装配置
    Linux系统基础优化及常用命令
    vim与程序员
  • 原文地址:https://www.cnblogs.com/keygle/p/2760705.html
Copyright © 2011-2022 走看看