重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Oracle客户端连接服务端,监听端口是固定的1521。
创新互联是专业的弋江网站建设公司,弋江接单;提供成都做网站、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行弋江网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
但是,监听连接后,会随机分配一个端口,并告知客户端连接此端口,获取数据。
这就造成 路由器的端口映射无法设置,使用防火墙的,也会有这个问题。
但是部署在Unix系统上的Oracle,不存在此问题,原因不再深究。
解决如下:在注册表 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME x(x目录编号)上新建一个字符串值:USE_SHARED_SOCKET=TRUE。
如果安装了多个目录,则每个类似的目录都要设置。并重启 数据库。
这样设置就是告知Oracle,不要随机分配连接端口,而是总是使用与监听相同的1521端口。
(1)这种端口会开放给公网吗?一般公网ip的防火墙机制是不会打开1521端口的,这里的防火墙不一定是你自己开的防火墙,而是云的防火墙,一般这种端口真的很难开放到公网上。
假设,假设啊,你的ip地址被别人知道了,然后别人就可以通过你的ip地址直接访问你的数据库(毕竟ip地址是公网,谁都可以访问,如果端口不封闭,那么这个数据库不用碰库就能被爆掉),你觉得数据放在这里会安全吗?
(2)tns文件是本地(客户端)文件,不是服务端的,个人觉得先tnsping (具体用法是tnsping 监听名(就是tns名),另外个人习惯啊,可听可不听,你的host=那里(tns文件)写ip应该更好,你的本机应该也是lacalhost吧)一下,看看是不是通的,如果同接证明我第一条白说,应该是另外一种可能,如果不通,那么就说明端口肯定没开,在云服务器上写java吧。
你也说了,改成公网ip后就监听起不来了,个人觉得应该是端口封闭了,所以以上是最可能的。如果是端口封闭了,可以考虑(4),当然个人强烈不建议把数据库放在公网上,感觉随时都可能被黑。
(3)listener.ora文件的host不要改成ip,这个host就是主机名,个人觉得改成ip还是算了。
(4)个人觉得,你可以考虑改变监听端口,数据库默认是1521,你可以改一个端口试试,不能用常用的或者有特殊通讯需求的端口,比如你可以改为9527,类似这种乱七八糟的端口,只要两边对应就可以实现,我记得我曾经同时启动两台数据库,一个用1521端口,一个1522端口,然后起一个监听监听两个端口,但是1521的因为端口限制不能访问,但是1522可以,因为端口没限制。
(1)oracle不会查,这么多年就见过一个访问量特别大的(大概10年前,一天10G数据量左右,但是有些人的数据量和他差不多也没被查)被查了(其实就是不能用了,连上网就不能用,内部用的话没有问题),其他没见过被查的。几十兆,oracle估计懒得管。(案值太低)
(2)oracle买的不是产品是服务,买了以后享受各种售后服务,当然买的时候不这么说,而是说买CPU或者用户(具体怎么买我忘了),所以如果单独装上那么是没有售后的,千万不要打售后电话,不然被查的可能性将急剧上升。
(3)1521端口改一个吧,因为1521大家都知道是oracle服务器端口,在阿里云上连接到本地服务器,也就是说需要走公网,如果有人知道了阿里云的地址,那么1521端口就是一个攻击点,改一个端口(没什么特殊意义的端口),这样能稍微安全一点点(只有一点点)。
(4)oracle不管是什么版本的,只要是oracle是不是在官网上下载都是一样的(只要你下载的不是测试版,我见过有人用测试版装正式系统,结果出了大笑话,测试版不能搭建rac,结果又去重装的),就算是从别人那里拿过来的也一样,oracle可没有地方输入什么序列号一类的地方,所以是不是官网下载的不重要,oracle没有盗版的。
(5)就算oracle将来查起来,也是对公司不会对人,就算是你自己公司安装的,公司也没办法找你的麻烦,因为oracle是公司要装的,而且我上面也说了,oracle是没有盗版的,所以如果oracle要查,而且你的oracle还连接着公网,那么谁也拦不住,只要不是你大力推荐的oracle就行了,当然可能会受到波及,比如成为领导推卸责任的工具人一类的,那也没办法,毕竟一线干活的都是这待遇。