首页 > 数据库 >【磐维数据库】Oracle(透明网关)访问磐维数据库(PanWeiDB)

【磐维数据库】Oracle(透明网关)访问磐维数据库(PanWeiDB)

时间:2024-10-23 14:32:38浏览次数:1  
标签:网关 磐维 数据库 odbc pwodbc oracle home

磐维数据库(PanWeiDB)是由中国移动基于中国本土开源数据库openGauss打造的自研数据库产品,主要面向ICT基础设施。它具有高性能、高可靠性、高安全性和高兼容性的特点,能够支持集中式、分布式、云原生、一体机等多种应用场景。目前,磐维数据库已在中国移动的多个省(区、市)公司及专业公司部署应用。未来,磐维数据库计划在云原生、Serverless、智能运维、生态兼容等方面持续做强深度自主研发,进一步打造面向全行业的数据管理解决方案。随着磐维数据库不断深入数据库国产化替换的深水区,越来越多的核心业务系统都在进行代码改造,准备上线磐维数据库。因历史原因,程序开发人员很热衷于使用database link从Oracle实例A访问其他Oracle实例(B、C、D...),从而完成数据的操作,但随着迁移到磐维数据库,异构数据库之间的数据交互就成了不容忽视的问题。

本文介绍了江西移动公司,是如何从Oracle数据库使用透明网关访问磐维数据库数据的。

无特别说明,都以oracle用户执行

测试环境信息

Oracle 19C         -- 192.168.11.151
PanWeiDB 3.0.0     -- 192.168.0.120

1、上传odbc驱动包到oracle服务器并解压

cd /home/oracle
mkdir pwodbc
cd pwodbc
tar xf  PanWeiDB-V2.0-ODBC-2.0.3_B01.tar.gz

2、配置odbc实例驱动

cat<<+>/home/oracle/pwodbc/unixODBC-2.3.9/etc/odbcinst.ini
[PWMPP]
Driver64=/home/oracle/pwodbc/odbc/lib/psqlodbcw.so
setup=/home/oracle/pwodbc/odbc/lib/psqlodbcw.so
+

3、配置odbc客户端连接磐维数据的信息

cat <<+>/home/oracle/pwodbc/unixODBC-2.3.9/etc/odbc.ini
[pwdb]
Description=Test
Driver=PWMPP
Servername=192.168.0.120
Database=testdb
Username=tpcc
Password=tpcc@123
Port=17700
Sslmode=allow
+

4、配置Oracle和grid用户环境变量,以使用指定的odbc驱动

cat <<+>>~/.bash_profile
export LD_LIBRARY_PATH=/home/oracle/pwodbc/lib:/home/oracle/pwodbc/odbc/lib:/home/oracle/pwodbc/unixODBC-2.3.9/lib:$LD_LIBRARY_PATH
export ODBCSYSINI=/home/oracle/pwodbc/unixODBC-2.3.9/etc
export ODBCINI=/home/oracle/pwodbc/unixODBC-2.3.9/etc/odbc.ini
+
source ~/.bash_profile

5、为驱动路径添加合适的权限,保证grid和oracle都有权限访问

chmod 755 -R /home/oracle/pwodbc

6、验证odbc驱动能正常访问PanWeiDB库,Oracle和grid用户都验证一下

odbcinst  -j
odbcinst -q -d
isql -v pwdb

结果类似如下:

[oracle@ora19c1 ~]$ isql -v pwdb
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> 

7、Oracle 配置透明网关服务,这里以PanWeiDB为sid示例
配置oracle用户hs, 配置init<sid>.ora在 $ORACLE_HOME/hs/admin/init<sid>.ora

cat <<+>$ORACLE_HOME/hs/admin/initpwdb.ora
HS_FDS_CONNECT_INFO = pwdb
HS_FDS_TRACE_LEVEL = 255
HS_FDS_SHAREABLE_NAME = /home/oracle/pwodbc/unixODBC-2.3.9/lib/libodbc.so
HS_NLS_NCHAR = UCS2
HS_LANGUAGE = AMERICAN_AMERICA.AL32UTF8
set LD_LIBRARY_PATH=/home/oracle/pwodbc/lib:/home/oracle/pwodbc/odbc/lib:/home/oracle/pwodbc/unixODBC-2.3.9/lib
set ODBCSYSINI = /home/oracle/pwodbc/unixODBC-2.3.9/etc
+

8、增加侦听

grid:  $ORACLE_HOME/network/admin/listener.ora  增加 
SID_LIST_LISTENER=
(SID_LIST=
   (SID_DESC=
     (SID_NAME=pwdb)
     (ORACLE_HOME=/u01/app/oracle/product/19.3.0/dbhome_1)
     (PROGRAM=dg4odbc)
     (ENVS="LD_LIBRARY_PATH=/home/oracle/pwodbc/lib:/home/oracle/pwodbc/odbc/lib:/home/oracle/pwodbc/unixODBC-2.3.9/lib")
   )
)

重新加载侦听

lsnrctl reload
lsnrctl status

9、配置tns
oracle: $ORACLE_HOME/network/admin/tnsnames.ora 增加

pwdb =
  (DESCRIPTION=
    (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.11.151)(PORT=1521))
    (CONNECT_DATA=(SID=pwdb))
    (HS=OK)
  )
tnsping pwdb

10、创建dblink验证

create database link  pg_link connect to "tpcc" identified by "tpcc@123" using 'pwdb';
select * from "t1"@pg_link ;

结果类似如下

SQL> select * from "t1"@pg_link ;
	id
----------
	 1
SQL> 

注意:
访问PanWeiDB的数据库表是需要在表名字上加上双引号(因为在oracle默认会转换为大写,而PanWeiDB默认小写,会造成访问不到表)

标签:网关,磐维,数据库,odbc,pwodbc,oracle,home
From: https://www.cnblogs.com/yuweijade/p/18496315

相关文章

  • 空间数据库基础理论 GIS空间数据处理分析涉及的基本概念
    空间数据库基础理论GIS空间数据处理分析涉及的基本概念周陆军​腾讯科技(深圳)有限公司前端开发​关注他 63人赞同了该文章《空间数据库》课程整理汇总,106篇课程,内容太长,学习中,把一些关键点,汇总记下笔记地理空间GIS中的地理空间(Geo-spatial)是指......
  • 使用 postgres 创建用户 创建数据库
    创建用户打开终端。以postgres用户身份登录到PostgreSQL命令行:shsudo-upostgrespsql在PostgreSQL命令行中,创建一个新用户。例如,创建一个名为newuser的用户,并设置密码:sqlCREATEUSERnewuserWITHPASSWORD'password';你还可以为用户分配额外的属性,例......
  • 适合数据库管理者的七个空间数据库(在2021版本中)
    适合数据库管理者的七个空间数据库(在2021版本中)最新推荐文章于 2024-09-0610:57:43 发布fmechina于2022-01-1116:43:00发布阅读量8.6k收藏23点赞数3分类专栏:默认分类文章标签:数据库postgresqldatabase  默认分类专栏收......
  • Oracle Spatial详解(空间数据库)
    OracleSpatial详解(空间数据库)完全转自:http://www.cnblogs.com/frogbag/archive/2007/10/17/926870.html Step1.创建一张表,其中shape用来存放空间数据 CREATETABLEmylake(   feature_idNUMBERPRIMARYKEY,   nameVARCHAR2(32),    shapeMDSYS.SDO_G......
  • Oracle-Spatial空间数据库基础
    Oracle-Spatial空间数据库基础完全转自:https://blog.csdn.net/wyp_666/article/details/72775714一、简介 oraclespatial是oracle公司推出的空间数据库组件,使oracle具备处理空间数据的能力。从9i开始对空间数据提供了比较完备的支持。OracleSpatial主要通过元数据表、空间......
  • 空间数据库基础理论 GIS空间数据处理分析涉及的基本概念
    空间数据库基础理论GIS空间数据处理分析涉及的基本概念周陆军​腾讯科技(深圳)有限公司前端开发​关注他 63人赞同了该文章《空间数据库》课程整理汇总,106篇课程,内容太长,学习中,把一些关键点,汇总记下笔记地理空间GIS中的地理空间(Geo-spatial)是指......
  • 一篇文章带你玩转PostGIS空间数据库
    一篇文章带你玩转PostGIS空间数据库发布于 2023-10-1714:35:555.4K0举报文章被收录于专栏:半旧的技术栈一篇文章带你玩转PostGIS空间数据库一、空间数据库介绍1.什么是空间数据库人类理解世界其实是按照三维的角度,而传统的关系型数据库是二维的,要......
  • DeviceNet主站转EtherCAT协议转换网关
    一,设备主要功能捷米特JM-ECT-DNTM网关实现EtherCAT网络与DeviceNet网络之间的数据通讯,可连接DeviceNet网络到EtherCAT网络。即将DeviceNet设备连接到EtherCAT网络。应用广泛:本产品应用于支持DeviceNet接口的电机、IO模块、机器人、仪表、等等。例如半导体设备中的IO模块、M......
  • EtherCAT转CC-Link协议转换网关
    一,设备主要功能捷米特JM-ECT-CCLK网关是自主研发的一款CC-Link从站功能的通讯网关。该产品主要功能是将各种CC-Link总线和EtherCAT网络连接起来。本网关连接到EtherCAT总线中做为从站使用,连接到CC-Link总线中做为从站使用。应用广泛:实现不同协议设备的集成:工业现场存在支持Et......
  • 基于大数据 Python+Vue 电影票房爬取可视化系统(源码+LW+部署讲解+数据库+ppt)
    !!!!!!!!!会持续一直更新下去有问必答一键收藏关注不迷路源码获取:https://pan.baidu.com/s/1aRpOv3f2sdtVYOogQjb8jg?pwd=jf1d提取码:jf1d!!!!!!!!!项目介绍在快速发展的社会中,娱乐领域也在不断进步。为了提高数据分析的效率和观众的观影体验,越来越多的影视公司和电影院选择利用互联网......