一、关于Oracle客户端和监听
Oracle客户端和监听是两个不同的东西。
Oracle客户端就是用来连接Oracle服务器的,一般情况下我们安装以后,使用的时候应该是感觉不到它的存在的。比如我们使用Java、C#连接Oracle数据库,不安装客户端会连不上,安装了自然就连上了。
Oracle监听程序是Oracle服务端的一部分。一般情况下,我们会使用Net Manager和Net Configuration Assistant配合使用来配置监听程序。而监听程序的配置,只会在服务端进行;客户端在不安装Oracle服务端的情况下也是无法找到Net Manager和Net Configuration Assistant的。
二、没有设置sys、system、scott用户名
如果在安装过程中,点下一步点的停不下来,很有可能错过“设置口令”的步骤。
在Oracle服务端,可以使用SQLPlus来解锁system和scott用户,并给sys、system、scott用户设置密码。
1.使用操作系统用户不用密码登录Oracle
打开cmd窗口,输入
sqlplus /nolog |
正常情况下,会出现如下界面,表示登录成功。当然还会出现insufficient privileges的情况,这种情况请看标题三。
2.解锁
alter user scott account unlock; |
注意结尾的;如果没有就会出现“2”的提示。2表示行号,是sqlplus的换行操作,直到输入;且换行为止。
3.修改密码
alter user scott identified by tiger; |
三、sqlplus /nolog出现insufficient privileges的情况
顾名思义,已改是没有权限导致,网上一查,需要将当前用户添加到“ora_dba”用户组中。
具体操作为:右键“我的电脑”,“管理”,“计算机管理”(或者compmgmt.msc),“系统工具”,“本地用户和组”,“组”,右边找到“ora_dba”,右键之“属性”,“添加”,“高级”,“立即查找”,找到你电脑的名称那个,确定,应用!
按照此顺序,发现,当前用户已经被添加到“ora_dba”用户组。无意中留意到“ora_dba”用户组属性中有“直到下一次用户登录时对用户的组成员关系的更改才生效”的表述。于是可以联想到:
安装完Oracle服务端,要重启服务器! |
重启服务器后sqlplus /nolog正常使用。
四、SqlPlus的使用
1.上面提到,SqlPlus中SQL语句结尾要有;,如果没有就会出现“2”的提示。2表示行号,是sqlplus的换行操作,直到输入;且换行为止。
2.如果你在客户瑞的SqlPlus中连接服务端,要随时使用以下的形式登录。如果你的客户机也安装了Oracle,很容易发生混乱,不知道连接的到底是哪个Oracle服务器。
sqlplus 用户名/密码@服务器地址/ORCL |
或
conn 用户名/密码@服务器地址/ORCL |
五、监听程序配置
一般情况下Oracle安装好后,已经有默认的设置了监听程序,不知道此次什么原因客户端无法连接。
使用Net Manager和Net Configuration Assistant两个工具配合来设置监听。
1.Net Manager
如下图,NetManager可以设置两个内容,服务命名和监听程序。
服务命名选择orcl,可以使用用户名和密码测试。
有时候你会发现SqlPlus可以连接Oracle,此处却测试不通,提示无监听程序。
此处我也挺郁闷,不过下次打开的时候,就可以测试通过了。此时可以重启电脑,这个很重要。
2.Net Configuration Assistant
此工具也包含了监听程序和网络服务名的两个配置。
这个工具把配置的过程步骤化了,反而可能会造成误会。
配置的过程和Net Manager增加的监听程序和服务名的过程差不多。下一步会后增加、修改之类,意思是增加一个新的,或者修改现有的。
3.配完监听程序后,最好重启电脑
刚开始测试不通,重启后测试通过。