mysql导入提示Unknown command '\"' 错误即mysqldump说明

mysql在导入的时候显示Unknown command '\''错误,

这个有些时候是由于导出端和导入端的字符集不同导致的。

解决方案:在导出的时候添加和默认字符集.

mysqldump  -p dbname  --default-character-set=GBK > db.sql
下面讲价一下mysqldump的相关参数:

内容摘自叶金荣的http://imysql.cn/mysql_backup_and_recover

--default-character-set=charset

指定导出数据时采用何种字符集,如果数据表不是采用默认的 latin1 字符集的话,那么导出时必须指定该选项,否则再次导入数据后将产生乱码问题。

--lock-all-tables,-x

在开始导出之前,提交请求锁定所有数据库中的所有表,以保证数据的一致性。这是一个全局读锁,并且自动关闭 --single-transaction  --lock-tables 选项。

--no-data,-d

不导出任何数据,只导出数据库表结构。

--no-create-info,-t

只导出数据,而不添加 CREATE TABLE 语句。

--quick,-q

该选项在导出大表时很有用,它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中。

--single-transaction

该选项在导出数据之前提交一个 BEGIN SQL语句,BEGIN 不会阻塞任何应用程序且能保证导出时数据库的一致性状态。它只适用于事务表,例如 InnoDB  BDB
本选项和 --lock-tables 选项是互斥的,因为 LOCK TABLES 会使任何挂起的事务隐含提交。
要想导出大表的话,应结合使用 --quick 选项。

通常使用以下 SQL 来备份 MyISAM 表:
/usr/local/mysql/bin/mysqldump -uyejr -pyejr \
--default-character-set=utf8 --opt --extended-insert=false \
--triggers -R --hex-blob -x db_name > db_name.sql

使用以下 SQL 来备份 Innodb 表:

/usr/local/mysql/bin/mysqldump -uyejr -pyejr \
--default-character-set=utf8 --opt --extended-insert=false \
--triggers -R --hex-blob --single-transaction db_name > db_name.sql

你可能感兴趣的:(数据库,mysql,职场,MysqlDump,休闲)