达梦数据库经验笔记
达梦数据库还算好使,这些年的使用经验留作笔记,给后来人或者同行铺路。
一、服务相关
1.有时候接入会提示“网络异常”,但换成local host也会提示,自己连接本地还会出现网络异常?——此时就代表服务可能没开!
启动和关闭数据库 | 达梦技术文档
2.安装时需要安装实例,一个数据库可以有多个实例,一般以端口作为区分。
创建和配置 DM 数据库 | 达梦技术文档
二、manager相关
1.在manager中,用sql对数据修改后提示成功却没有效果:
需要点击【提交】(绿色勾子的按钮)
2.有时候别人创建的数据库,我们不知道,该怎么修改密码?
重置密码方法:
- 找到达梦数据库的配置文件dm_ini,该文件通常位于$DM_HOME/data/DMSERVER目录下。
- 在dm_ini文件中添加ENABLE_LOCAL_OSAUTH=1这一行。
- 保存并关闭dm_ini文件。
- 重启达梦数据库实例。
- 以sysdba身份登录数据库,此时将不再需要密码验证。
- 登录成功后,可以重新设置sysdba密码。执行以下SQL命令:
ALTER USER SYSDBA IDENTIFIED BY new_password;
将new_password替换为新的sysdba密码。- 修改完成后,再次重启达梦数据库实例,以使密码更改生效。
三、代码接入使用相关
此处仅介绍qt的数据库相关
1.驱动一般使用odbc
本人使用的时候,在linux下配置不稳定,尤其是【odbc.ini】和【odbcinst.ini】文件每次都不胜其烦的修改。
实际使用过程中容易出现两个位置的那两个文件都得改,一个是/usr目录,一个是用户目录下的dmdb(这个一般是安装时没给管理员,安装到用户上的情况)
DM ODBC 编程指南 | 达梦技术文档
odbc经常需要根据自己的环境进行源码编译出动态库和驱动才可以使用!
QODBC 编译 | 达梦技术文档
ODBC连接达梦数据库_通过odbc连接达梦数据库-CSDN博客
2.DPI 方式再开发的qdm驱动,代码上把qt的odbc的位置改成qdm就行
代码段仅需要做如下修改即可执行:
原 QODBC 接口:QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
QDM 接口:QSqlDatabase db = QSqlDatabase::addDatabase("QDM");
DPI 编程指南 | 达梦技术文档
四、SQL相关
达梦数据库不是mysql也不是SQLserve,有些sql的方式在这里不支持
结构化查询语言 DM_SQL 简介 | 达梦技术文档
在迁移工具(dts)中有部分种类的sql的相互转换功能~可以实试试,这个工具也可以批量执行sql