Mariadb 如何在实例之间安全地移动数据库目录
考虑以下情况:您有两个MariaDB实例(可能在不同的物理服务器上),每个实例都有不同的数据目录 第一个实例有DATA_DIR1,包含InnoDB数据库DB1和DB2的文件夹 第二个实例有数据_DIR2,包含InnoDB数据库DB3和DB4的文件夹 假设您想要将DB2从第一个实例移动到第二个实例 如何在实例之间安全地复制文件(即,不执行mysqldump,这对于非常大的数据库来说太慢)。或者,可以选择使用mariabackup部分备份,因为这不会像mysqldump那么慢 特别是,需要做些什么来正确地指示第一个实例它将不再看到DB2,并正确地指示第二个实例它现在应该识别已放置在DATA_DIR2中的DB2副本?否文件不能复制,至少不能按原样复制Mariadb 如何在实例之间安全地移动数据库目录,mariadb,Mariadb,考虑以下情况:您有两个MariaDB实例(可能在不同的物理服务器上),每个实例都有不同的数据目录 第一个实例有DATA_DIR1,包含InnoDB数据库DB1和DB2的文件夹 第二个实例有数据_DIR2,包含InnoDB数据库DB3和DB4的文件夹 假设您想要将DB2从第一个实例移动到第二个实例 如何在实例之间安全地复制文件(即,不执行mysqldump,这对于非常大的数据库来说太慢)。或者,可以选择使用mariabackup部分备份,因为这不会像mysqldump那么慢 特别是,需要做些什么来
如果您的版本中有“可传输表空间”,请查看它。这将准备文件作为副本。在第一个实例中,键入
showcreatedatabasedb2
。对于DB2中的每个表,键入showcreatetable
使用这些命令的输出在第二个数据库实例中重新创建数据库和(空)表
在第二个实例中,对于DB2数据库中的每个表,键入altertablediscard TABLESPACE代码>
在第一个实例中,对于DB2中的每个表,键入FLUSH TABLES,,。。。用于出口代码>
将文件从第一个实例中的DB2目录复制到第二个实例中的DB2目录
在第一个实例中,键入UNLOCK TABLES
在第二个实例中,对于数据库类型altertableimporttablespace中的每个表代码>
资料来源: