达梦数据库使用笔记,备份还原,迁移

---------------------------------java--------------------------

1.pom 版本

java 复制代码
   driverClassName: dm.jdbc.driver.DmDriver
    druid:
      # 主库数据源
      master:
        url: jdbc:dm://10.28.85.99:5236/TESTDB2?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false
        username: TESTDB2
        password: 123456789
java 复制代码
    <dependency>
          <groupId>com.dameng</groupId>
          <artifactId>DmJdbcDriver18</artifactId>
          <version>8.1.2.79</version>
     </dependency>

2.表命名

1.不支持 横杠,如 gd-table

2.mysql 数据迁移 到 dm 时,会出现 某些数据类型的长度过长的问题,注意

3.在 mysql 数据库中,对象名默认是小写,达梦对象名默认是大写

4.关键字 高亮蓝色显示

3.数据库使用

1.使用select 查询时,表必须带模式名

2.DBeaver连接(DM)达梦数据库 http://www.jnnr.cn/a/527798.html

3.工具: manager 管理工具,dts 迁移工具

  1. 库 \模式 \表空间\用户 ??

即MySQL的一个库对应达梦数据库的一个表空间&一个用户。

5.本机的字符集 使用的是 GB18030;

4.管理员 SYSDBA SYSDBA

--------------------------------使用-----------------------------

1.达梦数据库入门指南(三)- 模式概念与基本使用 https://blog.csdn.net/weixin_42788203/article/details/127287687

1.用户的模式(SCHEMA)指的是用户账号拥有的对象集,在概念上可将其看作是包含表、 视图、索引和权限定义的对象; 系统为每一个用户自动建立了一个与用户名同名的模式作为其默认模式.

模式等同于 数据库.

2.将达梦安装目录放到360的 安全操作中心-已信任项中,防止当做木马删除,导致服务无法启动

3.先看DM服务查看器,最后两个服务是否启动

4.达梦使用的开发版,有限制,其他版本需要买

--------------------------------对比mysql------------------------

1.减了10天

select DATE_FORMAT(ADD_DAYS(NOW(), -10), '%Y-%m-%d')

select DATE_FORMAT(DATE_SUB(NOW(), INTERVAL 10 DAY), '%Y-%m-%d')

减了 12个月:select DATE_FORMAT(ADD_MONTHS(now(),-12), '%Y-%m-%d')

2.间隔天数

select DATEDIFF(day,sysdate(),'2023-06-29')

3.不识别 `type` , 这个符号 ` ,改成 "type"

达梦数据库-日期类型常用函数汇总 https://blog.csdn.net/run65536/article/details/124766413

---------------------------------备份和还原--------------------

1.达梦数据库的备份与还原 https://blog.csdn.net/wxq1212/article/details/126963016

1.备份库

使用DM控制台工具console备份 :前提条件:关闭数据库服务,开启dmap服务 --

bin > ./DmServiceDMSERVER stop

bin > ./dmap

(1)使用DM控制台工具console备份

tool > ./console

指定备份集目录和备份名,执行完全备份

(2)DM控制台工具还原,需要关闭数据库服务

配置完成路径后,点击获取备份,选择需要还原的文件,然后依次还原、恢复、更新魔数

还原:(数据库关闭,dmap服务打开)

还原数据

RMAN> restore database '/dm8/data/DMDB/dm.ini' from backupset '/dm8/data/FULL'

数据恢复

RMAN> recover database '/dm8/data/DMDB/dm.ini' from backupset '/dm8/data/FULL'

数据库还原完成,需要更新魔数

RMAN> recover database '/dm8/data/DMDB/dm.ini' update db_magic

启动数据库

./DmServiceDMSERVER start

2.备份模式

导出

2.bug

1.本地编码:PG_GBK, 导入文件编码:PG_GB18030 -- 没有解决

达梦数据库不同模式导入时系统提示字符集异常的解决办法 https://blog.csdn.net/u013245014/article/details/122450921

locale

locale -a | grep 18030 #查看服务器是否支持GB18030字符集

export LANG=zh_CN.gb18030

export LANG=en_US.UTF-8

export LANG=zh_CN.UTF-8

---------------------------------迁移---------------------

1.修改配置

1.D:\dmdbms\data\DAMENG\dm.ini COMPATIBLE_MODE=4

2.只能迁移表和视图

3.DM 数据库目前不支持 UTF8MB4。DTS 从 MySQL 迁移到 DM,char 长度是原来的 3 倍;

MySQL 中 varchar(1) 可以存一个汉字,DM 数据库是以字节为单位。gb18030 字符集,varchar(2) 才可以存一个汉字;UTF-8 字符集,varchar(3) 才可以存一个汉字。

1.打开迁移工具

2.新建工具-新建迁移

1.保持对象名大小写 -勾选 # 在用达梦 DTS 工具迁移的时候,去掉"保持对象名大小写"的勾选,使对象名自动转换成大写,在 mybatis 查询的时候,即不需要加双引号强调小写

是否勾选都没有影响,建议勾选

2.指定模式: 目的模式 -数据库名\创建模式

3.问题:

1.达梦数据库,写 SQL 如何才能不带上模式名https://eco.dameng.com/docs/zh-cn/article/article-010.html

CREATE TABLESPACE TESTDB1 DATAFILE 'TESTDB1.DBF' SIZE 128;

CREATE USER TESTDB1 IDENTIFIED BY "123456789" DEFAULT TABLESPACE TESTDB1;

GRANT RESOURCE TO TESTDB1;

---------------------------------linux----------------------

注意:

  1. /dm/data 授权给用户 dmdba

  2. 8236 需要放开防火墙

3.默认用户名和密码:SYSDBA/SYSDBA

5.(*)簇大小\页大小\字符集 在创建实例时必须设置成一样的,分别是 32\32\utf-8

6.(*)不勾选 标识符大小写敏感

/etc/dm_svc.conf

参考 https://eco.dameng.com/document/dm/zh-cn/start/dm-start-stop-linux.html

  1. 密码 : 8

  2. mount -o loop /opt/dm8_20230420_x86_kylin10_64.iso /mnt

su - dmdba

cd /dm8/bin

chown -R dmdba:dinstall /dm8/bin

需要使用 root 用户授予 /dm/data 目录相应权限 1qaz@3ER

su - root

mkdir /dm/data

chown dmdba:dinstall -R /dm/data/ # /dm/data/ 这个必须授权给用户 dmdba

chmod -R 755 /dm/data

su - dmdba

./dminit path=/dm/data

./dminit path=/dm/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y CHARSET=1 DB_NAME=DMDB INSTANCE_NAME=DBSERVER PORT_NUM=5237

su - root

cd /dm8/script/root

./dm_service_installer.sh -t dmserver -dm_ini /dm/data/DAMENG/dm.ini -p DMSERVER

cd /dm8/tool

./dbca.sh

systemctl start DmServiceDMSERVER.service

cd /dm8/bin

./disql SYSDBA/SYSDBA:5236

systemctl status firewalld

开启

查看和指定SpringBoot内嵌Tomcat的版本 https://blog.csdn.net/hills/article/details/130765675

资金系统 路径: D:\github\upload\demo

达梦数据库查看版本号方法 https://blog.csdn.net/weixin_44671771/article/details/129379096

---------------------------------------------window 安装---------------------------------

D:\dmdbms

D:\dmdbms\data

D:\dmdbms\drivers\jdbc 达梦驱动地址

SYSDBA/SYSDBA

数据库名: DAMENG

实例名: DMSERVER

数据库目录: D:\dmdbms\data

端口: 5236

服务: DMServiceDMSERVER

数据库目录: D:\dmdbms\data\DAMENG\

控制文件:

D:\dmdbms\data\DAMENG\dm.ctl

数据文件:

D:\dmdbms\data\DAMENG\SYSTEM.DBF

D:\dmdbms\data\DAMENG\ROLL.DBF

D:\dmdbms\data\DAMENG\TEMP.DBF

D:\dmdbms\data\DAMENG\MAIN.DBF

日志文件:

D:\dmdbms\data\DAMENG\DAMENG01.log

D:\dmdbms\data\DAMENG\DAMENG02.log

ELOG:

D:\dmdbms\data\DAMENG\

簇大小: 32页

页大小: 32K

日志文件大小: 256M

时区设置: +08:00

页面检查: 不启用

字符集: GB18030

USBKEY-PIN:

页分片大小: 4096

标识符大小写敏感: 否

VARCHAR以字符为单位: 否

空格填充模式: 否

改进的字符串HASH算法: 是

启用日志文件加密: 否

启用全库加密: 否

启用加密: 否

创建示例库 BOOKSHOP

创建示例库 DMHR

相关推荐
i道i21 分钟前
MySQL win安装 和 pymysql使用示例
数据库·mysql
小怪兽ysl21 分钟前
【PostgreSQL使用pg_filedump工具解析数据文件以恢复数据】
数据库·postgresql
wqq_9922502771 小时前
springboot基于微信小程序的食堂预约点餐系统
数据库·微信小程序·小程序
爱上口袋的天空1 小时前
09 - Clickhouse的SQL操作
数据库·sql·clickhouse
聂 可 以2 小时前
Windows环境安装MongoDB
数据库·mongodb
web前端神器2 小时前
mongodb多表查询,五个表查询
数据库·mongodb
门牙咬脆骨2 小时前
【Redis】redis缓存击穿,缓存雪崩,缓存穿透
数据库·redis·缓存
门牙咬脆骨2 小时前
【Redis】GEO数据结构
数据库·redis·缓存
wusong9993 小时前
mongoDB回顾笔记(一)
数据库·笔记·mongodb
代码小鑫3 小时前
A043-基于Spring Boot的秒杀系统设计与实现
java·开发语言·数据库·spring boot·后端·spring·毕业设计