由于自己的主机的ip是dhcp获取的,ip在每次重启电脑的时候就会改变,所以写了两个创建dblink的脚本,一个shell需要输入要创建dblink 名称,远程主机的ip地址和数据库的服务名serive_name,缺点是还有手动填写ip地址。
======createdblink.sh==========
#!/bin/bash
DBLINK =$1
IPADD =$2
SERVICE_NAME
function usage(){
echo "Usage: `basename $0 ` DB_LINK_NAME IPAddress SERVICE_NAME "
exit 0
}
[ $# != 3 ] && usage
sqlplus -s yang/yang <
drop database link $DBLINK;
create database link $DBLINK
connect to yang identified by yang
using
'( DESCRIPTION =
(
ADDRESS_LIST =(ADDRESS=(PROTOCOL = TCP )(HOST = $IPADD)(PORT=1521))
)
(
CONNECT_DATA=(SERVICE_NAME =$SERVICE_NAME)
)
)';
EOF
exit 0
==========dblink.sql================
drop database link &&DBLINK;
create database link &&DBLINK
connect to yang identified by yang
using
'( DESCRIPTION =
(
ADDRESS_LIST =(ADDRESS=(PROTOCOL = TCP )(HOST = &IPADD)(PORT=1521))
)
(
CONNECT_DATA=(SERVICE_NAME =oracl)
)
)';
yang@rac1>@dblink.sql
输入 dblink 的值: linkrac
原值 1: drop database link &&DBLINK
新值 1: drop database link linkrac
drop database link linkrac
*
第 1 行出现错误:
ORA-02024: 未找到数据库链接
原值 1: create database link &&DBLINK
新值 1: create database link linkrac
输入 ipadd 的值: 10.1.151.111
原值 6: ADDRESS_LIST =(ADDRESS=(PROTOCOL = TCP )(HOST = &IPADD)(PORT=1521))
新值 6: ADDRESS_LIST =(ADDRESS=(PROTOCOL = TCP )(HOST = 10.1.151.111)(PORT=1521))
输入 service_name 的值: rac
原值 9: CONNECT_DATA=(SERVICE_NAME =&service_name)
新值 9: CONNECT_DATA=(SERVICE_NAME =rac)
数据库链接已创建。
yang@rac1>select count(1) from yangall@linkrac;
COUNT(1)
----------
1174688
yang@rac1>
相关文章
- 10-08如何在C 11(STL)中创建一个拉链两个元组的函数?
- 10-08Roll A Ball 刚体介绍和脚本的创建
- 10-08如何为使用fastcgi和perlbrew在Nginx上运行的Perl催化剂应用程序创建初始化脚本
- 10-08Orcale用户创建dblink和同义词的方法
- 10-08在脚本的shebang行中添加Python参数(使用buildout和zc.recipe.egg:脚本创建的脚本)
- 10-08python – 如何指定setuptools创建的命令脚本的shebang行
- 10-084.创建OpenStack的node环境脚本
- 10-08QT+创建两个不相干的窗口实现一个显示一个不显示
- 10-08QT+创建两个不相干的窗口实现一个显示一个不显示
- 10-08创建两个对象的两种方法,一中\new,另外一种不new