跟 SQLServer 不同,MySQL不支持 SELECT INTO 语句直接备份表结构和数据,由于工作中的需要在网上找到一种方法可以代替, 也有其它方法可以处理,总结如下。
一、MySQL不支持 SELECT INTO
方法一
MYSQL不支持:
1
Select * Into new_table_name from old_table_name;
替代方法:
1
Create table new_table_name (Select * from old_table_name);
方法二
先备份表结构和数据
1
2导出命令 -u用户名 -p密码 -h主机IP地址 数据库名 表名1 > 导出文件.sql
mysqldump -uroot -proot -h192.168.1.3 target_db target_db2 > db_export.sql修改备份表的名字
登录MySQL
选择数据库
执行:
source db_export.sql
二、SQLServer支持 SLECT INTO
备份表直接执行如下就可以了。
1 | Select * Into new_table_name from old_table_name; |
三、MySQL SELECT INTO FILE 用于导出指定的查询数据到文件
导出表中所有数据到 outfile.sql 中如下:
1 | Select * into outfile '/path/to/outfile.sql' from test; |