mysql执行SQL文件

在网站运营中,我们经常遇上迁移数据的问题。在网上找了很多。。感觉写的不是很全面。。自己总结一下:
迁移数据我们只需要四步就能轻松完成
第一步 在原数据库中导出SQL文件
在命令行下输入 mysqldump -uroot -p‘passpass’ --default-character-set=utf8 databaseName >d:backup\bak_sql_name.sql;
其中 -u 后面紧接的是mysql账户名 -p后面' '里面的是密码,注意-u和用户名之间可以有空格,-p和密码之间不能有空格
--default-character-set=utf8 指定导出的文件的字符集为UTF8
databaseName 为需要导出的数据库名
> 输出语句
d:backup\bak_sql_name.sql; 为输后的SQL文件;
第二步 连接到目标数据库
在命令行输入 mysql -h localhost -u root -p‘passpass’;
其中 -h 表示存放数据库的主机
第三步 设置目标数据库的字符集
在命令行工具mysql下,操作数据库时要保证编码的一致。
这里所说的编码是指数据库编码,连接编码,客户端编码。
可以通过命令 show variables like 'character_set_%';来查询
然后通过命令 set character_set_client=utf8;来修改
只要你的三个编码 character_set_client character_set_connectio character_set_database保持一致,在命令行工具下,操作就不会出现乱码问题。
注意:如果重新连接数据库后要重新设置这些编码
第四步 导入数据库
先用命令 use databaseName ; 选择你要导入的目标数据库;
在命令行下(已连接数据库,此时的提示符为 mysql> ),输入 source d:backup\bak_sql_name.sql; (注意路径不用加引号的) 或者 \. d:backup\bak_sql_name.sql; (注意路径不用加引号的) 回车即可
注:在LINUX下面,使用~表示当前用户的主目录
Tags: 

延伸阅读

最新评论

发表评论