1.源數據庫5.7 目標數據庫 8
Mysql8服務器安裝之前 需要安裝.net 並且關閉用戶賬戶控制
試驗涉及到的文件
Everything.exe
mysql-installer-community-8.0.24.0.msi
Notepad2.exe
NDP461-KB3102436-x86-x64-AllOS-ENU.exe
NDP461-KB3102436-x86-x64-AllOS-ENU靜默安裝.bat
2.Navicat同步表結構
3.目標庫 配置
Root登陸命令行
SHOW VARIABLES LIKE "secure_file_priv";
必須使用 Notepad2.exe 修改配置文件
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
查找 secure-file-priv
#secure-file-priv="C:/ProgramData/MySQL/MySQL Server 8.0/Uploads"
secure-file-priv=
重啟目標服務器 mysql服務
4.原系統導出數據到文件
用root登陸
執行查詢 導出到excel
select
table_schema as '數據庫',
table_name as '表名',
table_rows as '記錄數',
truncate(data_length / 1024 / 1024, 2) as '數據容量(MB)',
truncate(index_length / 1024 / 1024, 2) as '索引容量(MB)'
from
information_schema.tables
where
TABLE_SCHEMA in ('nwms')
order by
data_length desc,
index_length desc
得到所有表信息
生成表導出語句
select * into outfile "c:\\mysqlbak\\z_object_transcation.sql" from z_object_transcation;
原系統執行sql導出數據到文件
導出數據速度為 虛擬機內3g數據 4分鍾
5.目標服務器導入 數據
拷貝文件到 目標服務器
5.1生成導入數據 語句
load data infile "d:\\mysqlbak\\z_object_transcation.sql" into table z_object_transcation ;
excel 公式 ="load data infile ""d:\\mysqlbak\\"&B2&".sql"" into table "&B2&" ;"
用root登陸
新建空數據庫iwms
Use iwms
執行上面的腳本
導入完成
實際導入速度: 3g數據文件在2g內存1核cpu 虛擬機內導入完成耗費19分鍾 還原后的數據文件mt_material_lot.ibd 3.89g
如果用Navicat 數據傳輸 功能, 這張表需要3個小時以上
相關參考文摘
MySQL查看表占用空間大小 - 月染霜華 - 博客園
https://www.cnblogs.com/shoshana-kong/p/11136919.html
MySQL數據庫遷移快速導出導入大量數據_Mysql_腳本之家
https://www.jb51.net/article/157887.htm
MySQL 之 LOAD DATA INFILE 快速導入數據 - LeRoi - 博客園
https://www.cnblogs.com/waynechou/p/7794939.html
按此文操作完全可以試驗成功
全文完
點擊加入群聊【SAP_MES行業交流】
