本站承诺永不接任何虚假欺骗、联盟广告、弹窗广告、病毒广告、诱导充值等影响用户体验的广告,广告屏蔽插件会影响本站部分功能,还请不要屏蔽本站广告,感谢支持!

当前位置:首页 / 正文

1710

Mysql 数据库导入导出比较快的方式

编程技术 | WangTwoThree | 2019-12-06 | 等你评论 | 3 次点赞

1、备份原来数据库表结构,在新库中恢复表结构,必须跟原库一模一样,包括索引等。

2、在原库上flush table,会生成一个cfg文件

SELECT
CONCAT(
    'flush table ',
    Group_concat(aa.table_name),
    ' for export;'
)
FROM
(
    SELECT
        CONCAT(
            TABLE_SCHEMA,
            '.',
            TABLE_NAME
        ) AS table_name
    FROM
        information_schema. TABLES
    WHERE
        TABLE_SCHEMA = '数据库名'
) aa

3、在新库中执行以下语句,删除新库的.ibd数据文件

alter table 表名 discard tablespace;

4、将原库上的表的.ibd文件和.cfg文件传输到新库

scp -r 老数据库服务器用户名@老数据库服务器ip:老数据库文件路径  新数据库路径
如:
scp -r root@127.0.0.1:/mysql/data/wang/table.ibd /mysql/data/wang

5、原库解锁表,会删除.cfg文件

unlock tables;

6、新库修改文件权限,数据文件抽过来之后默认为 root 权限,改为 mysql 权限

chown -R mysql.mysql *

7、在新库中执行以下语句,导入新抽取的数据文件

alter table 表名 import tablespace;

猜你喜欢

暂无评论

有话要说

tips:首次评论须经过审核才会显示,请不要重复提交
本页二维码

扫码手机打开

浏览TOP5
热门标签
点赞TOP5
最新评论
别人在看