当前位置: 首页 > 图文教程 > 数据库 > MYSQL > mysql从执行.sql文件时处理\n换行的问题

MYSQL
MYSQL教程:保护MySQL安装程序文件
MYSQL教程:MySQL服务器权限表
MYSQL教程:建立加密连接
MYSQL教程:检查数据表和修复数据表
MYSQL教程:备份数据库
MYSQL教程:使用备份恢复数据
MYSQL教程:MySQL程序介绍
MYSQL教程:数据库具体操作
MySQL Explain命令用于查看执行效果
Phpnow服务器软件集成套件的安装问题和解决方法
SQLyog工具可以分析Mysql数据库
AppServ安装配置Apache+PHP+Mysql环境
MySQL异常:未验证的用户尝试登录
Mysql教程:MYSQL创建触发程序
MYSQL代码:定期备份Mysql数据库
PHP实现的Mysql读写分离
PHP教程:MySQL读写分离由PHP实现
用PHPnow搭建PHP+MYSQL网站开发环境
瑞典300M可绑米免费PHP空间
常见的十款PHP+MySql类免费CMS系统

MYSQL 中的 mysql从执行.sql文件时处理\n换行的问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 265 ::
收藏到网摘: n/a

后来注意到,在上面我们恢复数据的时候是在没有连接数据的状态下执行的。 在备份数据库的时候,数据表中可能存在这样的值array('a'='b',
'c'='d')
这种格式的值。而在数据导出的时候 会将换行换成\n(windows下是这样,unix下可能是另一种符号)。而当在回复数据的时候,如果用mysql -h localhost -u root -proot < path/*.sql进行恢复的时候,这样数据库会报告“不能识别"\n"字符的错误提示,从而使操作终止。 想了半天,难道是在数据导出的时候有个选项可以禁止将换行转换成 “\n",看了mysqldump所有的可选项,没有找到解决的答案。 那问题就是处在导入数据的时候。
后来注意到,在上面我们恢复数据的时候是在没有连接数据的状态下执行的。那么,我们先连接数据库,即先执行mysql -h localhost -u root -proot 进入到数据库,然后在数据库连接成功的状态下 再执行mysql> source path/*.sql;语句,ok,数据导入成功。