达梦数据库迁移数据

进入达梦安装目录的bin文件夹
cd /dmdbms/bin

执行导出(导出所有用户数据,包含表结构和数据)

./dexp SYSDBA/Sysdba123456@localhost:30236 \
  file=/dmbackup/dmtest_full.dmp \
  log=/dmbackup/dmtest_exp.log \
  full=y \
  ignore=y

参数说明:
• SYSDBA/Sysdba123456:管理员账号密码
• @localhost:30236:数据库连接地址和端口
• file:备份文件路径
• full=y:全量导出(包含所有模式、表、数据)
• ignore=y:忽略导出过程中的非致命错误

停止现有数据库实例

方式1:通过服务停止(如果配置了系统服务)
systemctl stop DmServiceDBSERVER
方式2:直接关闭进程(确保是当前实例)
kill -15 <数据库进程ID>  # 替换为实际的dmserver进程ID

3. 备份并删除现有数据库文件(谨慎操作)

备份原数据库目录(防止意外,可跳过但建议执行)
mv /dmdata/data/DMTEST /dmdata/data/DMTEST_OLD
或直接删除(确保已导出备份后执行)
rm -rf /dmdata/data/DMTEST

4. 重新初始化数据库(正确设置参数)

使用 dminit 工具,指定正确的 CASE_SENSITIVE=n(不区分大小写)和目标字符集(如 CHARSET=2 代表 UTF-8):

./dminit path=/dmdata/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=n CHARSET=2 DB_NAME=DMTEST INSTANCE_NAME=DBSERVER PORT_NUM=30236 SYSDBA_PWD=Sysdba123456  SYSAUDITOR_PWD=Sysdba123456

5. 启动新数据库实例

启动新初始化的数据库
./dmserver /dmdata/data/DMTEST/dm.ini &

6. 导入之前的逻辑备份(恢复数据)

使用 dimp 工具(逻辑导入工具),将备份数据导入新数据库:

cd /dmdbms/bin

./dimp SYSDBA/Sysdba123456@localhost:30236 \
  file=/dmbackup/dmtest_full.dmp \
  log=/dmbackup/dmtest_imp.log \
  full=y \
  ignore=y
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容