
Linux下Oracle监听器配置文件在:$ ORACLE_HOME/network/admin/listerer.ora, 如:
/bank/oracle/oracle10g/product/10.2.0/network/admin/listener.ora
修改并配置要监听SID的相关信息,如:
#listener.ora Network Configuration File: /bank/oracle/oracle10g/product/10.2.0/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /bank/oracle/oracle10g/product/10.2.0)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL DBNAME = bkserver)
(SID_NAME = bkserver)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.7.13.242)(PORT = 1521))
)
)
2. 启动监听器
(1). 切换至oracle安装用户(一般为oracle)
su - oracle
(2). 启动监听器
lsnrctl start
另:停止监听器
lsnrctl stop
3. 测试监听器是否运行正常
在客户端修改tnsnames.ora配置文件就访问Oracle数据库,如:
BKSERVER =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.7.13.242)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = BKSERVER)
)
)
通过命令tnsping测试是否能访问到监听器,如:
M:\>tnsping bkserver
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 12-8月 -
2010 17:11:04
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的参数文件:
D:\oracle\product\10.2.0\client_1\network\admin\sqlnet.ora
已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 10.7.13.242)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVIC
E_NAME = BKSERVER)))
OK (20 毫秒)
注意: 监听器是否能被tnsping通跟数据库的开启/关闭无关,所以就算可以tnsping通监听器但未必能连接到数据库,这时请检查listener.ora文件配置信息是否正确,还有数据库是否已经被开启。
0.0.0.0 3306改成#netstat -ant只让内网可以连到。多谢。就像mysql可以配置其 port= 一样呀。。在[mysqld]下加一句port=$your_port,$your_port是你需要的端口,然后重新启动mysql即可.注:windows下my.ini文件默认在C:\WINNT下.比如把 #netstat -ant0.0.0.0 3306改成#netstat -ant192.168.0.5 3306127.0.0.1 3306只让内网可以连到。不过你可以在BSD或LINUX下配置一下防火墙~~~对外网屏蔽3306端口~~简单有效的方法~~~注:windows下my.ini文件默认在C:\WINNT下.Trotter班长,我是想更改监听地址,也就是主机 只监听,本机的My SQL 3306,就 =127.0.0.1 3306,不是要更改端口号码。 你现在知道吗,可以想想我想你应该有办法?mikespook防火墙我知道,但本身系统,软件方面的安全我们也应该做好,让其具有更高的安全性,一直是我们这些管理员应该做的。应该知道的呀。比如把 #netstat -ant0.0.0.0 3306改成#netstat -ant192.168.0.5 3306127.0.0.1 3306只让内网可以连到。真正OK的做法,如下。。希望对大家有所帮助*安全配置*为了数据的安全,可以考虑让MySQL只守候在127.0.0.1上,这样从Internet上就无法直接访问数据库了。修改/etc/init.d/mysql文件在start部分找到类似下面这行$bindir/mysqld_safe --datadir=$datadir --pid-file=$pid_file &修改成$bindir/mysqld_safe --datadir=$datadir --pid-file=$pid_file --bind-address=127.0.0.1 &重起MySQL/etc/init.d/mysql restart最后netstat -l确认一下:tcp 0 0 localhost:mysql *:* LISTENOK,该加精华~~~见识了论坛的威力了!!谢谢,大家的热情回复,真正OK的做法,如下。。希望对大家有所帮助*安全配置*为了数据的安全,可以考虑让MySQL只守候在127.0.0.1上,这样从Internet上就无法直接访问数据库了。有两种,一种是创建一个php进程,while true永远执行,sleep 1,没一秒监听一次第二种,用linux的定时任务,每一分钟执行php监听
第一种方案的缺点,玩意php出现错误,进程被终止
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)