orcal修改服务名、监听器启动后报错停止,某些服务在未由其他服务或程序使用时将自动停止、提供端口、IP给其他人连接自己的数据库

修改orcal服务名/SID

  1. 修改

在这里插入图片描述

  1. 测试

在这里插入图片描述

  1. 查询语句
    1. show parameter service_name;
    2. show parameter db_name;
    3. show parameter db_domain;
    4. select * from global_name;
  2. 修改global_name数据名语句
    alter database rename global_name to orcl;
  3. 修改service_name服务名语句
    alter system set service_names=‘new_service_name’ scope=both;
    注意事项
    service_names:而不是service_name
    *scope:Oracle 里面有个叫做spfile的东西,就是动态参数文件,里面设置了Oracle 的各种参数。所谓的动态,就是说你可以在不关闭数据库的情况下,更改数据库参数,记录在spfile里面。更改参数的时候,有4种scope选项。scope就是范围
    ++ scope=spfile 仅仅更改spfile里面的记载,不更改内存,也就是不立即生效,而是等下次数据库启动生效。有一些参数只允许用这种方法更改
    ++ scope=memory 仅仅更改内存,不改spfile。也就是下次启动就失效了
    ++ scope=both 内存和spfile都更改
    ++ 不指定scope参数,等同于scope=both. *
  4. 修改服务名后,原本orcl服务名依然有效,相当于添加了一个服务名
    在这里插入图片描述

这些修改完后进行测试代码连接oracle数据库报错,说监听器无法失败这个sid,进navicat连接一看果然报错了
在这里插入图片描述

上面只改了服务名可是sid没有修改,而代码中是通过sid连接的数据库,所以还要修改sid
在这里插入图片描述

  • 查看sid命令
    • select instance_name from V$instance;
  • 修改sid命令
    • alter system set instance_name=‘scl’ scope=spfile;

修改完后进行查看sid,显示的还是orcl,但是我重新数据库和监控器服务,用navicat连接是却能连接上,而且代码中连接也能连接上,而且navicat用中用orcl选择sid连接时就报错说监听器不能识别这个sid,这些就说明修改成功了
在这里插入图片描述

服务名有用
在这里插入图片描述

sid没有用了
在这里插入图片描述

监听器启动后报错停止

问题原因:是你打开了提供给别人连接你的oracle端口、IP,但是后来的IP修改了,但是你的监听器配置里面的ip没改,监听不到ip就相当于没有监听项,所以启动后停止了。

配置给别人连接你的oracle在这里插入图片描述

不提供给别人连接了,最好删除/注释,或者是如果IP换修改IP,不然监听器就会启动后停止,报错
在这里插入图片描述

注意:修改内容后要重新启动oracle服务和监听器,提供给别人连接你的oracle时要关闭你的防火墙,不然会阻止其他人连接你的端口,而且两个人要在同一个局域网才能连接你的数据库

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值