参考:http://devbbs.doit.com.cn/archiver/tid-18781.html
因为数据库服务器是安装在实验室里面的, 如果要在宿舍里访问数据库服务器的话,那么就必须进行一定的配置。一般的远程配置可以分为以下几步:
因为要为外界客户端提供数据服务,所以一定要将 [数据库操作模式] 配置为 "共享服务模式"。如果将操作模式配置成"专用服务器模式",导至远程客户端无法正常连接。
如果不能确定数据库的操作模式,可以打开ORACLE "Database Configuration Assistant"(简称DBCA) 工具的 "在数据库中配置数据库选项" 进行配置。
如果新建数据库一定不要忘了将 [数据库操作模式] 配置为 "共享服务模式".
确定数据库服务已经启动.
方法: 右键我的电脑,选择管理,然后进入windows服务管理功能,在 WINDOWS服务 窗口中找到您的数据库服务(一般都以 OracleService+数据库实例名 的形式命名),查看是否为"已启动"状态,否则请启动该服务。
确定数据库已经附加到监听程序中,并且监听程序已启用.
方法: 右键我的电脑,选择管理,然后进入windows服务管理功能,在 WINDOWS服务 窗口中找到您的监听程序服务(一般都以 OracleOraHome92TNSListener监听程序名 的形式命名,默认的监听程序服务名为 "OracleOraHome92TNSListener"),查看是否为"已启动"状态,否则请启动该服务.
确定监听程序所使用的端口已被列入防火墙允许的行列.
5.1. 测试连接
方法: 命令行 下键入 "tnsping 服务端IP地址"
如果出现 "OK(XX毫秒)" 字样,说明可以与服务端建立连接.否则请检查服务端配置.
5.2. 添加服务名
方法: 打开ORACLE "Database Configuration Assistant" 工具 -> "本地NET服务名配置" -> "添加" -> 选择ORACLE数据库或服务(依个人服务端设置进行相应选择,我的是8i或更高版本..) -> 输入服务名(建库时输入的全局数据库名) -> TCP -> 主机名中输入服务端IP地址,端口输入服务端监听程序所监听的端口 -> 是,进行测试 -> 首次测试可能会失败,因为默认的用户名口令不一定和服务端的匹配,点击 更改登录 输入有效用户名和口令确定后如出现"测试成功",说明连接成功,点击下一步 -> 输入本地服务名 -> 直到完成.
将数据库服务器设置为“共享服务模式”以后,使用sqlplus连接数据库会出现错误: 错误“ORA-12520: TNS: 监听程序无法找到需要的服务器类型的可用句柄”。解决方法是将数据库模式改回原来的专用服务模式。这时候远程依然能够连接到数据库。可以参考http://blog.csdn.net/xw13106209/article/details/6609695