欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

达梦数据库使用总结

程序员文章站 2022-06-02 20:12:43
...

一、安装达梦

达梦云文档-单机部署

1、安装最好在当前用户安装,好多都是被官方手册误导“新建用户组 dinstall,新建用户 dmdba”安装,会带来后续权限的问题。
2、使用

1、修改用户资源限制

//执行以下命令,修改 dmdba 用户资源限制:
vim /etc/security/limits.conf
 
//文件末尾添加如下内容:(没创建用户的,前面不要dmdba)
dmdba soft core unlimited
dmdba hard core unlimited
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba soft nproc  65536
dmdba hard nproc  65536
dmdba soft stack  65536
dmdba hard stack  65536

2、安装
运行安装程序安装

3、添加用户环境变量

//执行以下命令,修改 dmdba 用户环境变量:
vi /home/dmdba/.bash_profile 
//文件末尾添加如下内容:
export DM_HOME=/dm8
export PATH=$PATH:$DM_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin

4、防火墙设置
运行环境应该对特定客户端开放数据库监听端口,并修改 DM 数据库默认的 5236 监听端口。

二、配置ODBC

配置ODBC
中标麒麟+QT+达梦数据库
1、Can’t open lib ‘/dm7/bin/libdodbc.so’ : file not found的解决
  (1)LD_LIBRARY_PATH
  上面的例子中多是修改/etc/profile、~/.bash_profile、~.bash等,这也确实起作用,但也有例外,在某国产操作系统v10上,LD_LIBRARY_PATH在/etc/profile、~/.bash_profile里的配置会在进入~.bash后给清空了,若在~.bash里设置LD_LIBRARY_PATH则双击运行程序找不到lidodbc.so。(只清空了LD_LIBRARY_PATH,PATH没清,两个最原始的都有个":",导致添加新路径只能在前面加)
  (2)ld.so.conf
  最保险的方法是:将路径加入到ld.so.conf

vim /etc/ld.so.conf
//在其中直接加入路径,注意路径前不要加include
/home/ppp/dm8/bin
//生效
sudo ldconfig /etc/ld.so.conf
suo ldconfig

(3)在/usr/lib或/usr/local/lib中创建链接

//后面的链到前面
ln -s /home/ppp/dm8/bin/libodbc.so /usr/bin/libodbc.so

三、Qt连接达梦

//pro文件中加入sql模块
QT += sql
//加入头文件
#include <QSqlDatabase>
#include <QSqlQuery>
//连接查询
QSqlDatabase m_db = QSqlDatabase::addDatabase("QODBC");
m_db.setHostName("192.168.1.111");
m_db.setPort(5236);
m_db.setDatabaseName("DM");
m_db.setUserName("SYSDBM");
m_db.setPassword("dma123");

if (m_db.open())
{
	qDebug() << "DM connect success!";
	
}
else
{
	qDebug() << "DM connect failed!" << m_db.lastError().text();
	return 0;
}

QString sql = "select * from “mod”.“test” "; //mod是模式名,test是表名
QSqlQuery query(sql);
while(query.next())
{
//逐列获取数据
QString col1 = query.value(0).toString();//query.value("NAME").toString();
QString col2 = query.value(1).toString();
int col3 = query.value(2).toInt();
}

m_db.close(); //关闭连接

四、SQL语法

1、总条数
2、分页
3、子查询

五、备份还原

1、备份表
2、备份表空间(需开启归档)
3、远程备份
逻辑备份(dexp/dimp)介绍

相关标签: 数据库