oracle建立mysql的dblink,连接mysql进行操作(window系统)
微信扫一扫关注个公众号。谢谢各位
1.控制面板-所有控制面板项-管理工具-ODBC 数据源
2.切记如果是外网服务,ip server 要填写外网地址
3.找到oracle安装目录,找到D:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN目录下的listener.ora
4.然后再同目录下找到tnsnames.ora加入
MYSQLODBC =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) #如果是外网调用,把localhost改为外网ip
)
(CONNECT_DATA =
(SERVICE_NAME = mysqlodbc)
)
(HS = OK)#此项必须加上
)
5.配置完成后找到D:\app\Administrator\product\11.2.0\dbhome_1\hs\admin目录创建initmysqlodbc.ora文件。命名规则是init+数据源名称.ora
HS_FDS_CONNECT_INFO = mysqlodbc #注意这里的名字
HS_FDS_TRACE_LEVEL = off #调试状态,如果连接出错,在路径
接下来执行一下命令
6.打开cmd命令 执行lsnrctl stop此命令成功后。lsnrctl start进行开启监听
7.通过oracle连接工具查询当前用户是否存在创建dblink的权限
select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='BMN';
如果为空说明,需要授权
grant create public database link to BMN;
8.然后找到oracle连接工具#localhost===>更改为mysql所在外网的ip。用户名和密码均为mysql的
create public database link mysqlodbc connect to "root" identified by "123456" using '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=MYSQLODBC))(HS=OK))';
接下来测试是否连接成功
然后就可以爽歪歪的用了
select * from "user"@mysqlodbc