zoukankan      html  css  js  c++  java
  • Centos MySQL数据库迁移详细步骤

    其实迁移数据库,一般用sql文件就行,把A服务器数据库的表结构和数据等等导出,然后导入到B服务器数据库,

    但是这次数据文件过大,大约有40个G,使用命令行导入,效果不是很好,经常在执行过程中报错、卡死。

    最后参考网上的帖子,复制源数据库的data目录下的文件,完成数据迁移。

    步骤如下:

    1.首先要确定data目录在哪里

    这个问题困扰了我很久,因为网上的帖子大部分只是说拷贝mysql数据库目录下的data文件夹中的数据,但是data目录到底在哪里,并未说明,我开始是拷贝的MySQL安装目录中的data文件夹,但是显然这是错误的,拷贝后并未出现需要的数据库。

    2.我是整个数据库目录进行迁移的 原目录 /var/lib/mysql 直接 mv或者cp过去(先停止mysqd 服务)

    比如cp到 /mnt/vdb/mysql目

    3.找到my.cnf配置文件

      如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:

     vi  my.cnf    (用vi工具编辑my.cnf文件,找到下列数据修改之)
       # The MySQL server
        [mysqld]
        port   = 3306
       #socket  = /var/lib/mysql/mysql.sock(原内容,为了更稳妥用“#”注释此行)
        socket  = /mnt/vdb/mysql/mysql.sock   (加上此行)

    [mysqld]
    datadir=/mnt/vdb/mysql
    socket=/mnt/vdb/mysql/mysql.sock
    #没有就新加 [mysql] socket=/mnt/vdb/mysql/mysql.sock [client] socket=/mnt/vdb/mysql/mysql.sock [mysqldump] socket=/mnt/vdb/mysql/mysql.sock

      重启服务如果发现/var/lib/mysql/mysql.sock错误就说明应该还有没有改到。。

    4.复制数据存在风险,请提前备份哦!!



     
  • 相关阅读:
    VSCode 设置 CPP 代码风格
    KiCad EDA 5.1.2 使用圆形板框时出现无法走线的问题
    oracle的sql优化
    mybatis 自动生成xml文件配置
    sql循环遍历
    XML
    oracle的concat的用法
    oracle 按某个字段查询重复数据
    Xshell 4的上传与下载
    Oracle之锁
  • 原文地址:https://www.cnblogs.com/kingkoo/p/8645017.html
Copyright © 2011-2022 走看看