一、ODBC连接DM数据库
环境准备:
*** 作系统 | RedHat6.8 |
数据库版本 | DM7 |
必要组件版本 | unixODBC-2.3.9 |
##在linux环境中配置ODBC
1.解压缩包
tar -xf unixODBC-2.3.9.tar.gz
cd unixODBC-2.3.9
2.配置与编译ODBC
./configure --enable-gui=no
make
make install
3.查看odbc版本与配置文件路径
[root@localhost unixODBC-2.3.9]# odbc_config --version
2.3.9
[root@localhost unixODBC-2.3.9]# odbc_config --odbcini
/usr/local/etc/odbc.ini
[root@localhost unixODBC-2.3.9]# odbcinst -j
unixODBC 2.3.9
DRIVERS............: /usr/local/etc/odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini
FILE DATA SOURCES..: /usr/local/etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
4.配置odbc.ini和odbcinst.ini文件
vi /usr/local/etc/odbc.ini
[dm]
Description = DM ODBC DSN
Driver = DM7 ODBC DRIVER
SERVER = localhost
UID = SYSDBA
PWD = SYSDBA
TCP_PORT = 5236
vi /usr/local/etc/odbcinst.ini
[DM7 ODBC DRIVER]
Description = ODBC DRIVER FOR DM7
Driver = /home/dmdba/dm/dmdbms/bin/libdodbc.so
5.修改配置文件权限
chmod 775 /usr/local/etc/odbcinst.ini
chmod 775 /usr/local/etc/odbc.ini
6.切换为dmdba用户做登入测试
[root@localhost unixODBC-2.3.9]# su - dmdba
[dmdba@localhost ~]$isql dm
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> select * from v$version
+---------------------------------------------------------------------------------+
| BANNER |
+---------------------------------------------------------------------------------+
| DM Database Server x64 V7.6.1.112-Build(2021.12.24-154107-10036)SEC
|
| DB Version: 0x7000a |
+---------------------------------------------------------------------------------+
SQLRowCount returns 2
2 rows fetched
SQL> quit
二、JDBC连接DM数据库
数据库版本 | DM7 |
JDK | jdk-17_windows-x64_bin.exe |
测试工具 | IDEA |
达梦JDBC驱动包 | Dm7JdbcDriver17.jar |
- 安装JAVA开发工具包-JDK
在官网下载对应的安装包,我使用的是jdk-17_windows-x64_bin.exe,安装路径是D:\jdk\jdk-17.0.2。
安装成功后配置JDK环境变量,即将JDK安装路径的bin路径复制到环境变量path中:
环境变量配置成功后,可以使用win+R打开命令提示符,输入java -version命令。可以正常出现版本信息,即控制变量配置成功。
2.在idea工具中添加jdbc驱动包
驱动包在/home/dmdba/dm/dmdbms/drivers/jdbc路径下
File>>Project Structure>>Libraies>>java
3.连接测试
import java.sql.DriverManager;
import java.sql.Connection;
class Connect{
static Connection conn=null;
static String name="dm.jdbc.driver.DmDriver";
static String url="jdbc:dm://dmconn?dmconn=(192.168.255.130:5236)&LOGIN_MODE=(1)";
static String user="SYSDBA";
static String password="SYSDBA";
public static void main(String[] args) {
try{
Class.forName(name);
conn= DriverManager.getConnection(url,user,password);
conn.setAutoCommit(true);
System.out.println("数据库连接成功"+url);
}catch(Exception e){
System.out.println("error");
}
}
}
4.也可以用idea自带的工具连接达梦数据库
打开driver,添加驱动
取名,并添加本地达梦JDBC驱动包
选择达梦JDBC驱动包
添加完后可以在class内选择DM的驱动包
输入用户账户密码,连接串,连接测试
三、后记
启动isql时如果有如下错误
[01000][unixODBC][Driver Manager]Can't open lib '/home/dmdba/dm/dmdbms/bin' : file not found
[ISQL]ERROR: Could not SQLConnect
说明odbcinst.ini文件中的Driver路径有问题,更改为正确路径即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)