sqlplus连接Oracle数据库的整个流程,
例如 sqlplus /nolog
conn system/oracle(密码)这个连接Oracle的整个机制是什么(注重于连接的原理上)如果有谁懂或有相关内容给予提示的话,本人将重分感激!
例如 sqlplus /nolog
conn system/oracle(密码)这个连接Oracle的整个机制是什么(注重于连接的原理上)如果有谁懂或有相关内容给予提示的话,本人将重分感激!
解决方案 »
- 为什么oracle中使用序列在已有数据中增加新数据完成自增序号,序号是增加了 但是为什么新加的数据在1,2,3条数据的前头啊
- 关于程序包游标的问题 在线等待
- 哪位兄台帮忙翻译个SQL Server 2008的脚本,翻译为Oracle 10 G上能运行的(雪地狂等!!)
- 关于赋权限的问题
- 又一数据导入问题
- 如和把数据库中一个用户所建的表导出,转入另一个相同数据库?急!!!
- ls_Hesxl:=ls_Hesxl||"'"||ls_BiaoZ||"'"
- 请问:开发了OCI的应用程序后,如何才能在客户的机器上运行?是否可以不装那么大的Oracle Client?
- 请教汉字显示的问题
- Oracle-TNS:could not resolve the connect identifier specified
- Oracle新手问题(2)
- 后台shell 杀掉了进程,但oralce查session确在,等了好久都没反映,请大家出出主意
sqlplus 就一工具,它能连接到数据库并进行相应的操作。既然是工具,我们知道怎么用好它就可以了,没必要去研究它的原理。当然如果是做这块工具研究的除外.
conn system/oracle(密码) 那就拿你这个例子来说吧
sqlplus /nolog 你可以理解为就是在操作系统上运行了SQLPLUS这个应用程序 因为此时并没有连接到数据库
conn system/oracle 这句话就是执行连接了
ORACLE的连接分两种方式 SHARED SERVER 和DEDICATED SERVER
如果是SHARED SERVER 方式下 那么客户端发起一个连接请求 服务器端的LISTENER会监听到连接请求 接下来把用户连接转接到一个叫DISPATCHER上去 之后客户端进程和SERVER PROCESS的交互就通过这个DISPATCHER来进行
如果是DEDICATED SERVER方式 那么当客户端发起一个连接请求时 服务器端的LISTENER会派生出一个专有进程与客户端进行进行交互(此处之所以说专有是和前一种模式SHARED SERVER 对比而言 。因为一个DISPATCHER可以服务多个客户端进程)更详细的官方材料可以参考下面链接http://blog.csdn.net/wh62592855/archive/2009/09/28/4604903.aspx
2) 则查询tnsnames.ora文件,从里边找tnsname的记录,并且找到主机名,端口和service_name。
3) 如果listener进程没有问题的话,建立与listener进程的连接。
4) 根据不同的服务器模式如专用服务器模式或者共享服务器模式,listener采取接下去的动作。默认是专用服务器模式,没有问题的话客户端就连接上了数据库的server process。
5) 这时候网络连接已经建立,listener进程的历史使命也就完成了。
1的描述有点问题, sqlnet.ora是服务器配置简单来讲就是socket握手和验证的过程
客户端发出指令给服务器,服务器根据用户的用户名和密码来验证,返回消息给客户端不过这么简单的一个握手验证行为,Oracle根据自己的体系的需要,考虑的很全面,从而引入了很多的概念你可以先一些看一些有区别的概念
1.通过tnsname登录和本地登录2.sysdba/sysoper登录和normal登录3. 共享密码文件,独占密码文件4. 专有服务和共享服务你可以先对这些概念了解一下,了解这些概念后,你基本上对登录的方式和内在流程有一定了解了。