怎么快速复制千万级的Mysql数据库表

怎么快速复制千万级的Mysql数据库表,第1张

我google了一下大概有一下几个方法,

1.复制表结构数据到新表

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 旧表

有两种办法。

1、在B机器上装mysql。

将A机器上的mysql/data下的你的数据库目录整个拷贝下来。

将B机器上的mysql服务停止。

找到B机器上的mysql/data目录,将你拷贝的目录粘贴进去,然后启动mysql服务就可以了。

2、使用SQL语句备份和恢复

你可以使用SELECT INTO OUTFILE语句备份数据,并用LOAD DATA INFILE语句恢复数据。这种方法只能导出数据的内容,不包括表的结构,如果表的结构文件损坏,你必须要先恢复原来的表的结构。

语法:

SELECT * INTO {OUTFILE¦ DUMPFILE} ’file_name’ FROM tbl_name

LOAD DATA [LOW_PRIORITY] [LOCAL] INFILE ’file_name.txt’ [REPLACE¦ IGNORE]

INTO TABLE tbl_name

SELECT ... INTO OUTFILE ’file_name’

在dos命令提示符下使用mysqldump命令进行备份.

如下:

C:\Documents and Settings\Administrator>mysqldump yinshi>c:\\backup.txt -uroot

-p12142022

1、使用软件Navicat就可迁移复制数据库,打开Navicat,右键点击左边空白的地方,点击New Connection下的MySQL,创建一个服务器的连接,下面将演示把本地的数据迁移到服务器:

2、在d出的创建新连接的窗口里,输入服务器的IP,数据库账号,密码等,然后就可以连接数据库了:

3、创建好后们打开本地的数据库,点击“Data Transfer”(数据传输),接着d出新的界面:

4、新窗口中在左边选择本地数据库的库,和需要转移的表,可以选择一个,或多个表:

5、然后在右边的目标里,选择服务器的连接,然后选择服务器上的数据库:

6、选择完成后,就开始进行数据转移了,数据量不是很大的,很快就会转移完成的。以上就是mysql中数据复制到另一个数据库的方法:


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6139993.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存