天天看点

理解oracle的共享连接和专用连接

专用连接模式下,客户端连接只支持专用连接;共享连接模式下,既可以使用专用连接模式,又可以使用共享连接模式;

专用连接模式:一个客户端连接对应一个服务器进程,一对一;

共享连接模式:多个客户端连接对应一个服务器进程,服务器端存在一个进程调度器(dispatchers)来管理,多对多;

看图说话

共享连接

理解oracle的共享连接和专用连接

专用连接

理解oracle的共享连接和专用连接

查看oracle数据库服务器是共享连接模式还是专用连接模式

理解oracle的共享连接和专用连接

以下测试为专用模式使用共享模式连接登录数据库报错

理解oracle的共享连接和专用连接
理解oracle的共享连接和专用连接

将server修改回DEDICATED,即可登录

理解oracle的共享连接和专用连接

那么如何修改数据库为共享模式呢?

配置dispatcher为2个,最大不超过5个;

alter system set dispatchers='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.3.168))(DISPATCHERS=2)';——这里建议写上host,如果不写,需要在连接的电脑上hosts文件加一条主机名和ip对应记录,否则会报错ora-12545;

alter system set max_dispatchers=5;

配置共享服务器进程的数量

alter system set shared_servers=5;——设置当前共享服务器进程为5

alter system set max_shared_servers=15;——最大共享服务器进程为15

alter system set shared_server_sessions=100;——设置共享连接会话数,此数量不能超过session的数量

理解oracle的共享连接和专用连接

修改tnsnames.ora的连接模式为shared共享模式

理解oracle的共享连接和专用连接

连接成功,查询v$session动态性能视图,连接方式既有专用又有共享连接

理解oracle的共享连接和专用连接

查询所有的dispatchers

理解oracle的共享连接和专用连接
理解oracle的共享连接和专用连接

最后教给大家一个简易连接方式

语法:

connect 用户名/密码@主机名(或IP地址):端口号/实例名

如:sqlplus sys/[email protected]:1521/orcl

本文转自 rm_rf_d 51CTO博客,原文链接:http://blog.51cto.com/12185273/2051556,如需转载请自行联系原作者