前提是使用mysqldump命令导出表的数据
方式1 导入某个表数据:
1、连接到数据库 mysql -u root -p --socket=/home/vpnmysql/mysql/mysql.sock -D testdb3 ##使用root用户,连接到mysql,-D是指定数据库testdb3
2、source /tmp/test/tables1.sql ##soureml导入tables1.sql
可以事使用绝对路径,也可以上传到某个路径下,在当前路径下连接数据库,执行source ./tables1.sql
方式2 导入某个表数据:
1、把slq文件的sql语句,拷贝到Navicat,或者Dbvis等mysql数据库客户端,然后执行导入。当sql语句比较少时,这个方法还可以,当sql文件比较大,sql语句很多是,拷贝粘贴都会占用时间,效率太低。还有很多个文件的时候,一个一个文件拷贝,费时费力,更不可取。
方式3 导入多个表数据:
1、创建一个sql文件,如import1.sql ,内容是source各个表的语句
SET FOREIGN_KEY_CHECKS=0;
source ./test1.sql;
source ./test2.sql;
source ./test3.sql;
source ./test4.sql; .... 注意各行之间必须用英文分号
2、 执行导入:mysql -u root -p --socket=/home/vpnmysql/mysql/mysql.sock -D testdb3 < import1.sql &> import1-20151204.log
-D testdb3,设置指定数据库,根据实际替换自己的数据库名称
< import1.sql &,设置sql文件,&带上表示在后台执行;可不带
> import1-20151204.log, 设置日志,输出到import1-20151204.log ,注意1只有导入有报错才会输出,2是符号>是覆盖原来的内容的。
PS:
>> 追加内容
> 覆盖已有内容