在项目部署或升级时,mysql在命令行中导入脚本是比较常用的方式。
比如, 现需要将1.sql导入数据test中,可以按照以下两种方法:
一、未连接mysql
mysql -uroot -p123456 -Dtest < /var/data/1.sql
以上通过-D指定数据库test,如果脚本中已经通过 use test 的方式指定了数据库,则可以省略-Dtest。
如果导入数据是乱码,需要通过--default-character-set指定字符集,如下所示:
mysql -hlocalhost -P3306 -uroot -p123456 -Dtest --default-character-set=utf8 < test.sql
二、已连接mysql
1、连接mysql
mysql -uroot -p123456
2、使用数据库
use test;
如果脚本中已通过 use test 的方式指定了数据库,则可以省略此步骤。
3、设置字符集,不然在某些环境导入数据时出现乱码
mysql> set names utf8;
此处设置为utf8,实际根据mysql的字符集进行修改即可。
4、导入脚本
mysql> source /var/data/1.sql
或者
mysql> \. /var/data/1.sql