我google了一下大概有一下几个方法,
CREATE TABLE 新表 SELECT FROM 旧表
2只复制表结构到新表
CREATE TABLE 新表 SELECT FROM 旧表 WHERE 1=2
即:让WHERE条件不成立
3复制旧表的数据到新表(假设两个表结构一样)
INSERT INTO 新表 SELECT FROM 旧表
4复制旧表的数据到新表(假设两个表结构不一样)
INSERT INTO 新表(字段1,字段2,) SELECT 字段1,字段2, FROM 旧表
你建表复制就可以了,例如CREATE TABLE aa AS SELECT FROM tree;这是完全复制tree表的数据及表结构到aa表中。假如要复制某些字段的话,如:insert into 表名user(表中字段sal) select sal from emp;插入某一列sal到user表中,从emp表中获取sal的数据信息。最后提醒下,Oracle和MySql复制表建表 一样,可以自己建表结构,再复制数据;也可以复制部分列和部分数据,分开 *** 作。 但要保证数据类型一致,插入指定列数,列数要相同,列的长度空间大就可以了。
什么系统?两个库是不是在同一台机?
linux下个人做法:
1同一台机
用mysqldump导出表数据(具体使用可以查一下)
mysqldump
-h
host
-P
port
-p
password
-u
user
database
--default-character-set=utf8
--add-drop-table
tablename
-r
/tmp/tablesql
再导入数据
mysqldump
-h
host
-P
port
-p
password
-u
user
database
tablename
</tmp/tablenamesql
或者在进入mysql后用source命令导入。
2不同的机,就需要先把数据文件导出,然后复制到另外一台机,再进行1的导入 *** 作。
windows下没试过,一般都直接用phpMyAdmin来 *** 作了,界面 *** 作没什么说的。
以上就是关于怎么快速复制千万级的Mysql数据库表全部的内容,包括:怎么快速复制千万级的Mysql数据库表、mysql数据库如何将相同数据库中的一个表的数据复制到另一个表中、mysql怎么复制一个数据库中的一张表到另外一个数据库~~~~等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)