达梦

作者: akka9 | 来源:发表于2021-10-26 22:42 被阅读0次

# 注意 ulimit 参数

# 添加环境变量到 profile : 重要
export DM_HOME=/opt/dmdbms
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin
export PATH=$PATH:$DM_HOME/bin

# install
./DMInstall.bin -i



# prepare
mkdir -p /data/dm
chown dmdba -Rv /data/dm

# init 
# su - dmdba

# UTF8
PORT_NUM=5002
DB_NAME=DMDSC
CHARSET=1
CASE_SENSITIVE=0
dminit \
CHARSET=$CHARSET CASE_SENSITIVE=$CASE_SENSITIVE PAGE_SIZE=32 EXTENT_SIZE=16 PORT_NUM=$PORT_NUM DB_NAME=$DB_NAME \
LENGTH_IN_CHAR=1 BLANK_PAD_MODE=1  \
LOG_SIZE=2048   path=/data/dm/$PORT_NUM 

# 初始化数据,等出现  SYSTEM IS READY.  可以按CTRL+C 中止
$dmserver /data/dm/$PORT_NUM/$DB_NAME/dm.ini

# 注册为 systemd 服务
# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p dmdsc -dm_ini /data/dm/5002/DMDSC/dm.ini 

  Created symlink from /etc/systemd/system/multi-user.target.wants/DmServicedmdsc.service to 
  /usr/lib/systemd/system/DmServicedmdsc.service.
  创建服务(DmServicedmdsc)完成
# systemctl status DmServicedmdsc


### SQL
SELECT SF_GET_UNICODE_FLAG();
SELECT SF_GET_CASE_SENSITIVE_FLAG();
SELECT SF_GET_LENGTH_IN_CHAR();


## 性能优化
sudo mkdir -p /data/dm/{app,dm_data,dm_redo,dm_arch,dm_backup} 
sudo chown dmdba -Rv /data/dm/

DB_NAME=DMDSC
DATA_PATH=/data/dm/dm_data
REDO_PATH="$DATA_PATH/$DB_NAME/dm_redo"
echo $REDO_PATH
/opt/dmdbms/bin/dminit \
PAGE_SIZE=32 EXTENT_SIZE=32 BLANK_PAD_MODE=1  \
CASE_SENSITIVE=0   LENGTH_IN_CHAR=1  \
LOG_SIZE=2048  DB_NAME=$DB_NAME \
PATH=$DATA_PATH \
LOG_PATH=$REDO_PATH/redo01.log LOG_SIZE=2048  \
LOG_PATH=$REDO_PATH/redo02.log LOG_SIZE=2048  \
LOG_PATH=$REDO_PATH/redo03.log LOG_SIZE=2048  \
MAX_SESSIONS=6000 CHARSET=1  PORT_NUM=5001  \

# 根据需要修改参数
PORT_NUM                        = 5002

/opt/dmdbms/bin/dmserver /data/dm/dm_data/DMDSC/dm.ini


## for GBK
CHARSET=0  LENGTH_IN_CHAR=1

# 归档文件大小和限制,都是M, ARCH_SPACE_LIMIT 一般保留3到7个完整备份。
ARCH_FILE_SIZE = 128
ARCH_SPACE_LIMIT = 5000


# first start
$ /opt/dmdbms/bin/dmserver  /data/dm/DAMENG/dm.ini


# service
#cp /opt/dmdbms/bin/service_template/DmService /etc/init.d/

注册为服务
# /opt/dmdbms/script/root/dm_service_installer.sh -t dmserver -p dmdsc -dm_ini /data/dm/dm_data/DMDSC/dm.ini

Created symlink /etc/systemd/system/multi-user.target.wants/DmServicedmdsc.service → /usr/lib/systemd/system/DmServicedmdsc.service.
Finished to create the service (DmServicedmdsc)

systemctl start DmServicedmdsc

服务名为 DmService+-p 参数后的内容
-t 指服务类型是 dmserver;-p 为服务名的后缀;-dm_ini 为实例的 dm.ini 文件的绝对路径。

add :
ulimit -n 1024000
INI_PATH=/data/dm/DAMENG/dm.ini

chkconfig DmService on

/etc/init.d/DmService restart

# logs
/opt/dmdbms/log/dm_DMSERVER_202110.log 

# cli
/opt/dmdbms/bin/disql SYSDBA/SYSDBA@127.0.0.1:5001


# create user
create tablespace "DATA_0001" datafile '/data/dm/DAMENG/DATA_0001.dbf' size 8192 autoextend on next 100 maxsize 33554431 CACHE = NORMAL;


create user "USER001" identified by "**********"
limit SESSION_PER_USER 300, CONNECT_IDLE_TIME 1440, CONNECT_TIME 600, FAILED_LOGIN_ATTEMPS 3, password_grace_time 10
default tablespace "DATA_0001"
default index tablespace "DATA_0001";

grant "DBA","PUBLIC","RESOURCE","SOI","VTI" to "USER001";
grant CREATE SESSION to "USER001";

ALTER USER "用户名" IDENTIFIED BY "密码";


## 常用配置
ENABLE_MONITOR=1  MONITOR_TIME=1   开启慢日志


LENGTH_IN_CHAR=1 UNICODE_FLAG=1     长度以字符为单位


CHARSET/UNICODE_FLAG 字符集选项。取值:0代表GB18030,1代表UTF-8,2代表韩文字符集EUC-KR。默认为0。


达梦数据库,应用适配过程的异常处理,原数据库MySQL
1、SQL 写法不支持,应用执行遇到报错:【无效的ORDER BY 字句】【不是GROUP BY 表达式】
登录数据库,执行这个SQL: sp_set_para_value(2,'COMPATIBLE_MODE',4);
执行成功后,重启数据库即可。
修改为4 后,关于group 和order 之前不兼容的语法报错,就会变得正常。

作者:旻璿
链接:https://www.jianshu.com/p/1c29849f2f8e


数据迁移  https://www.cnblogs.com/zqntx/p/14000183.html
DM 达梦数据库 生产环境 参数优化 说明   https://www.cndba.cn/dave/article/4321
https://halo.sherlocky.com/archives/dm7-setup-optimize

打开归档 

$ disql SYSDBA/SYSDBA@localhost:5236
SQL> ALTER DATABASE MOUNT;
executed successfully
used time: 345.272(ms). Execute id is 0.

SQL> ALTER DATABASE ARCHIVELOG; 
SQL> sp_set_para_value(1,'ARCH_INI',1);
DMSQL executed successfully
used time: 11.779(ms). Execute id is 53300.

SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST = /data/dm/dm_arch, TYPE = LOCAL, FILE_SIZE= 1024, SPACE_LIMIT = 10240';
executed successfully
used time: 0.788(ms). Execute id is 0.

SQL> ALTER DATABASE OPEN;
executed successfully
used time: 337.293(ms). Execute id is 0.

关闭归档
ALTER DATABASE MOUNT;
ALTER DATABASE NOARCHIVELOG; 
ALTER DATABASE OPEN;

JDK



<dependency>
    <groupId>com.dameng</groupId>
    <artifactId>Dm8JdbcDriver18</artifactId>
    <version>8.1.1.49</version>
</dependency>
<dependency>
    <groupId>com.dameng</groupId>
    <artifactId>DmDialect-for-hibernate5.3</artifactId>
    <version>8.1.1.49</version>
</dependency>
<dependency>
    <!--注意:只有这个版本的hibernate兼容达梦数据库 -->
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>5.3.18.Final</version>

————————————————
DM JDBC 数据库连接驱动具体位置是 dm.jdbc.driver.DmDriver
————————————————
pring.datasource.dm.jdbc-url=jdbc:dm://1.1.1.1:5236/DM_DB
spring.datasource.dm.username=username
spring.datasource.dm.password=password
spring.datasource.dm.driver-class-name=dm.jdbc.driver.DmDriver
 
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.DmDialec
————————————————
datasource:
    type: com.zaxxer.hikari.HikariDataSource
    url: jdbc:dm://xxx.xxx.xxx.xx:5236?SCHEMA=test
    username: SYSDBA
    password: SYSDBA
    databaseName: test
    dialect: org.hibernate.dialect.DmDialect
    driver-class-name: dm.jdbc.driver.DmDriver
jpa:
    database-platform: org.hibernate.dialect.DmDialect
    #    database: DM
    show-sql: true
————————————————

url="jdbc:dm://(192.168.138.234:5236,192.168.138.235:5237)?comOra=true&loadBalance=true&loadBalanceFreq=10000"


url="jdbc:dm://dmrac?comOra=true&loadBalance=true&loadBalanceFreq=10000"


----------------------
DMDSC JDBC 
spring.datasource.driverClassName=dm.jdbc.driver.DmDriver
spring.datasource.url=jdbc:dm://DMDB?dmsvcconf=/app/dmsvc.conf

cat /app/dmsvc.conf 
TIME_ZONE=(480)
LANGUAGE=(cn)
DMDB=(1.1.1.1:5237,2.2.2.2:5237)
[DMDB]
CLUSTER=(DSC)
EP_SELECTOR=(0)
AUTO_RECONNECT=(1)


MAX_SESSIONS

相关文章

  • 相识达梦,结缘达梦

    首先很感谢在2013年机缘巧合结识了达梦,在接下来的日子里一直伴随着成长,变成自己学习的一部分。也感谢青山老师,耶...

  • 达梦

  • 介绍几个国产数据库

    一、DM 软件名称:达梦数据库(DM)。 开发商:武汉bai华工达梦数据库有限公司。 软件描述: 达梦数据库具有如...

  • springboot-mybatis数据库从mysql迁移到达梦

    背景 领导要求支持国产数据库项目要适配达梦6、达梦7、gbase、金仓等国产数据库。 1. 表数据迁移 幸好达梦6...

  • 携梦,走过1958年的达钢

    携梦,走过1958年的达钢 ■寻梦达钢 寻梦洲河 拐弯达钢 ...

  • 【达梦数据库系列之二】达梦DM 8在RHEL 8上的安装

    达梦数据库管理系统是达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,简称DM。 2019年5月,达梦公司...

  • 关与达梦日记

    因为达梦日记,让我认识了班上的思楠,她不但给我寄了一本达梦日记,并且得到了她耐心的给我讲解达梦日记的使用方...

  • 达梦参数

    插入报错 SQLAllocHandle {HY000} 问题场景 应用使用 ORM 开启事务,批量插入语句,起初...

  • 达梦数据库系列1:初识达梦

    起 笔者最近忙于国产化的工作,抱歉很少更新博客了,这并不算是好事情,写博客也是检验自己有没有产出知识的能力,人往外...

  • 梦达优品

    梦达优品,让购物多一种选择! 优选好品 闪电到家。

网友评论

      本文标题:达梦

      本文链接:https://www.haomeiwen.com/subject/wmfualtx.html