环境说明: 数据库 版本:11gR2 透明 网关版本:11g 操作系统Windows Server2008_64位 ORACLE_HOME目录:D:\app\Administrator\product\11.2.0\dbhome_1 MS 数据库 IP:192.168.199.245 数据库 :BWONLINE 默认端口:1433 ORACLE 数据库 IP:172.18.123.113 服
环境说明:
数据库版本:11gR2
透明网关版本:11g
操作系统Windows Server2008_64位
ORACLE_HOME目录:D:\app\Administrator\product\11.2.0\dbhome_1
MS数据库IP:192.168.199.245 数据库:BWONLINE 默认端口:1433
ORACLE数据库IP:172.18.123.113 服务名:db1 默认端口1521
备注:现在安装数据库后安装透明网关,透明网关安装时候的Home目录和数据库的Home目录一样。(好处:方便服务器监听的管理)
马上进入正题:
一、透明网关参数的配置:
1.安装完Gateway软件后,在ORACLE_HOME目录下有一下dg4msql的目录,这就是Gateway软件的目录了。
在dg4msql/admin目录下有一个initdg4msql.ora的文件,这里的文件命名规则为initsid.ora,系统安装完毕后会自动产生一个initdg4msql.ora的文件;
2.在实际的工作中,创建一个连接ms数据库为bwonline的链接,直接拷贝默认的initdg4msql文件,修改后缀,如上图所示 。
3.编辑initbwonline.ora文件:
HS_FDS_CONNECT_INFO=192.168.199.245//DBONLINE
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
HS_FDS_CONNECT_INFO的参数说明:
1)参数格式:hostname:port/serverinstance /databasename,其中hostname为机器名或IP地址,有网友说这里需要填写机器名才可以,但是经过实验测试机器名和IP地址都没有问题;
2)端口号:SQL Server2005默认的端口好为1433,也有网友介绍需要填写端口号才可以,经过测试填写和不填写都是可以的(可能测试环境不同导致测试的结果不同)
3)serverinstance是SQL Server的实例名,不知道什么时候SQL Server也搞起实例来了,一般空着就行。
4)Databasename是SQL Server的数据库名,需要填写;
5)整个参数文件的写法本人总共尝试过4种,经测试都是可以的。
HS_FDS_CONNECT_INFO="192.168.199.245;database=BWONLINE"
HS_FDS_CONNECT_INFO=[192.168.199.245]//BWONLINE
HS_FDS_CONNECT_INFO=192.168.199.245:1433//BWONLINE
HS_FDS_CONNECT_INFO=192.168.199.245//BWONLINE
二、监听文件listener的配置
1.监听文件的目录:ORACLE_HOME/NETWORK/ADMINISTRATOR下的listener.ora文件
2.文件的格式说明:文件分成两部分:SID_LIST_LISTENER和LISTENER
SID_LIST_LISTENER为监听SID的清单,LISTENER为监听主机的信息(IP地址和端口号的设定),详细如下:
# listener.ora Network Configuration File: D:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = dg4msql) -----前面定义SID的名称
(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1) -----ORACLE的HOME目录
(PROGRAM = dg4msql) -----程序的配置目录(以前部分的版本透明网关的目录为tg4msql,请大家注意)
)
(SID_DESC =
(SID_NAME = bwonline)
(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)
(PROGRAM = dg4msql)
)
)
--------加亮部分说明当在透明网关配置完相应的SID,复制加亮的这一段,修改相应的SID_NAME即可。
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.18.123.113)(PORT = 1521)) ----监听服务器的IP地址或hostname和端口号
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = D:\app\Administrator
3.配置完以上参数,启动监听便可以看到相应的服务名:在cmd里面输入:lsnrctl status
三、配置tnsnames文件,这步比较简单,相信都很熟悉了。
1.监听文件的目录:ORACLE_HOME/NETWORK/ADMINISTRATOR下的tnsnames.ora文件
db1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.18.123.113)(PORT = 1521)) ----监听服务器的信息
)
(CONNECT_DATA =
(SERVICE_NAME = DB1) -----监听服务名称
)
(HS = OK)
)
四、透明网关的测试
1、创建dblink
脚本:
CREATE DATABASE LINK BWONLINE
CONNECT TO SA
IDENTIFIED BY "*****"
USING 'BWONLINE';
2、查找相应MS下面的一张表,然后再ORACLE下面通过DBLINK来访问;
成功返回数据,表明相应的透明网关和dblink都是没有问题的。
3.当往Sql里面插入数据时,有时会出现错误:ORA-01591错误与分布式事务:
则可以用以下办法解锁:
select * from DBA_2PC_PENDING;
找到global_tran_id=ECOLOGY.bf951efe.7.2.44893
commit force 'ECOLOGY.bf951efe.10.24.485992';
或者
rollback force 'ECOLOGY.bf951efe.10.24.485992';
后面这串字符每次都不一样。
4.还有可能出现错误:对象名 'RECOVER.HS_TRANSACTION_LOG' 无效
解决办法是在SQLserver中创建这里配置的用户RECover和表HS_TRANSACTION_LOG
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
表脚本:
DROP TABLE HS_TRANSACTION_LOG
CREATE TABLE HS_TRANSACTION_LOG(
GLOBAL_TRAN_ID char (64) NOT NULL,
TRAN_COMMENT char (255) NULL
)
不过SQLserver里面创建用户比较麻烦,这里可直接改成dbo,和sa的密码。

oracle asm指的是“自动存储管理”,是一种卷管理器,可自动管理磁盘组并提供有效的数据冗余功能;它是做为单独的Oracle实例实施和部署。asm的优势:1、配置简单、可最大化推动数据库合并的存储资源利用;2、支持BIGFILE文件等。

方法:1、利用“select*from user_indexes where table_name=表名”语句查询表中索引;2、利用“select*from all_indexes where table_name=表名”语句查询所有索引。

在oracle中,可以利用“TO_SINGLE_BYTE(String)”将全角转换为半角;“TO_SINGLE_BYTE”函数可以将参数中所有多字节字符都替换为等价的单字节字符,只有当数据库字符集同时包含多字节和单字节字符的时候有效。

在Oracle中,可利用lsnrctl命令查询端口号,该命令是Oracle的监听命令;在启动、关闭或重启oracle监听器之前可使用该命令检查oracle监听器的状态,语法为“lsnrctl status”,结果PORT后的内容就是端口号。

在oracle中,可以利用“drop sequence sequence名”来删除sequence;sequence是自动增加数字序列的意思,也就是序列号,序列号自动增加不能重置,因此需要利用drop sequence语句来删除序列。

在oracle中,可以利用“select ... From all_tab_columns where table_name=upper('表名') AND owner=upper('数据库登录用户名');”语句查询数据库表的数据类型。

方法:1、利用“LOWER(字段值)”将字段转为小写,或者利用“UPPER(字段值)”将字段转为大写;2、利用“REGEXP_LIKE(字符串,正则表达式,'i')”,当参数设置为“i”时,说明进行匹配不区分大小写。

方法:1、利用“alter system set sessions=修改后的数值 scope=spfile”语句修改session参数;2、修改参数之后利用“shutdown immediate – startup”语句重启服务器即可生效。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

Dreamweaver Mac版
ビジュアル Web 開発ツール

SublimeText3 中国語版
中国語版、とても使いやすい

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

ホットトピック









