首页 > 数据库 > 国内数据库 > 熟能生巧丨通过ODBC连接 MogDB 数据库
适用范围
问题概述
解决方案
步骤 1. unixODBC软件包下载并解压
[root@app2 odbc]# pwd
/opt/odbc
[root@app2 odbc]# ll
total 1596
-rw-r--r-- 1 root root 1633390 Jul 26 17:31 unixODBC-2.3.5.tar.gz
步骤 2. 编译ODBC
[root@app2 odbc]# tar -xf unixODBC-2.3.5.tar.gz
[root@app2 odbc]# cd unixODBC-2.3.5/
[root@app2 unixODBC-2.3.5]# vi configure
[root@app2 unixODBC-2.3.5]# grep LIB_VERSION configure
LIB_VERSION
LIB_VERSION="1:0:0"
[root@app2 unixODBC-2.3.5]# ./configure --enable-gui=no
make
make install
步骤 3. 上传MogDB-ODBC-5.0.0.2-CentOS-x86_64.tar.gz文件并解压
[root@app2 odbc]# pwd
/opt/odbc
[root@app2 odbc]# tar -xf MogDB-ODBC-5.0.0.2-CentOS-x86_64.tar.gz
[root@app2 odbc]# ll
total 10612
drwxr-xr-x 2 root root 4096 Mar 16 17:05 lib
-rw-r--r-- 1 root root 9217501 Jul 26 17:50 MogDB-ODBC-5.0.0.2-CentOS-x86_64.tar.gz
drwxr-xr-x 3 root root 4096 Mar 16 17:05 odbc
drwxrwxr-x 20 lighthouse lighthouse 4096 Jul 26 17:45 unixODBC-2.3.5
-rw-r--r-- 1 root root 1633390 Jul 26 17:31 unixODBC-2.3.5.tar.gz
步骤 4. 拷贝odbc目录下的文件到/usr/local/lib
[root@app2 odbc]# cd odbc/lib/
[root@app2 lib]# ll
total 1512
-rwxr-xr-x 1 root root 1287 Mar 16 17:05 psqlodbca.la
-rwxr-xr-x 1 root root 744744 Mar 16 17:05 psqlodbca.so
-rwxr-xr-x 1 root root 1287 Mar 16 17:05 psqlodbcw.la
-rwxr-xr-x 1 root root 791472 Mar 16 17:05 psqlodbcw.so
[root@app2 lib]# pwd
/opt/odbc/odbc/lib
[root@app2 lib]# cp ./* usr/local/lib
lib/ lib64/ libexec/
[root@app2 lib]# cp ./* usr/local/lib/
[root@app2 lib]# cp * usr/local/lib/
cp: overwrite ‘/usr/local/lib/libodbccr.la’? y
cp: overwrite ‘/usr/local/lib/libodbccr.so’? y
cp: overwrite ‘/usr/local/lib/libodbcinst.la’? y
cp: overwrite ‘/usr/local/lib/libodbcinst.so’? y
cp: overwrite ‘/usr/local/lib/libodbc.la’? y
cp: overwrite ‘/usr/local/lib/libodbc.so’? y
步骤 5. 配置ODBC驱动文件
[GaussMPP]
Driver64=/usr/local/lib/psqlodbcw.so
setup=/usr/local/lib/psqlodbcw.so
[DriverName]:驱动器名称,对应数据源 DSN中的驱动名。
Driver64:驱动动态库的路径。
Setup:驱动安装路径,与 Driver64中动态库的路径一致。
步骤 6. 配置数据源文件
[MPPODBC]
Driver=MogDB
Servername=127.0.0.1
Database=demo
Username=dbuser
Password=MogDB@123456
Port=36000
Sslmode=allow
Servername:数据库 Server IP。
Driver:驱动名,对应 odbcinst.ini中的 DriverName。
Database:连接数据库名。
Username:数据库用户名。
Password:数据库用户密码。
Port:数据库侦听端口
步骤 7. 配置数据库服务器
gs_guc reload -N NodeName -l all -c"listen addresses="*"
gs_guc reload -N all -l all -h "host all all 0.0.0.0/0 sha256“
gs_ctl stop
gs_ctl start
步骤 8. 在客户端配置环境变量
[root@app2 ~]# vi ./.bashrc
export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
export ODBCSYSINI=/usr/local/etc
export ODBCINI=/usr/local/etc/odbc.ini
source ~/.bashrc
步骤 9. 测试数据源配置
[root@app2 etc]# isql -v MogDBODBC
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
[root@app2 ~]# isql -v MogDBODBC
isql: error while loading shared libraries: libltdl.so.7: cannot open shared object file: No such file or directory
yum install libtool-ltdl
【参考文档】
https://docs.mogdb.io/zh/mogdb/v5.0/3-configuring-a-data-source-in-the-linux-os
关于作者
贾勇智,云和恩墨技术顾问,具有银行、税务、电力等行业丰富的数据库运维经验,擅长数据库自动化运维工具开发,热衷技术分享,拥有OCM / PGCM / KCP认证,目前专注于 openGauss、MogDB、PostgreSQL 数据库的运维工作。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29715045/viewspace-3024807/ ,如需转载,请注明出处,否则将追究法律责任。