首先,使用sqlplus来管理数据库是最高的境界~而且对于我们理解oracle很有帮助,不要过于依赖第三方开发工具,如plsqldeveloper等等,这些工具是用来开发包,存储过程等等比较复杂的结构用的。
环境:windowsXP,oracle11g。
下面,从登陆数据库开始!
1. 启动服务
第一种方法:右击我的电脑-->管理--> 服务和应用程序 --> 服务 --> 找到OracleOraDb11g_home1TNSListener和OracleServiceXXX(XXX是你的数据库实例名,如果没有改动的话是ORCL)这连个服务,双击,启动,确定。
第二种方法:运行--> cmd --> 输入lsnrctl status,查看监听程序状态,如果监听没有启动的话,会提示:
LSNRCTL for 32-bit Windows: Version 11.1.0.6.0 - Production on 27-9月 -2011 11:22:44
Copyright (c) 1991, 2007, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=caoyongming2)(PORT=1521)))
TNS-12541: TNS: 无监听程序
TNS-12560: TNS: 协议适配器错误
TNS-00511: 无监听程序
32-bit Windows Error: 61: Unknown error
此时,可以输入:lsnrctl start,启动完毕监听程序之后,继续输入net start OracleServiceXXX,启动实例的服务即可。
第一种方法比较简单,第二种方法很见个人功力...
个人建议:如果是自己个人电脑,建议将这两个服务的启动类型设为“手动”,需要的时候根据上面的步骤启动即可,不然很费电脑资源,导致电脑速度变慢。设置方法:双击服务,将启动类型选为“手动”即可...
2. 启动sqlplus,连接用户
第一种方法: 运行--> 敲入sqlplus 或者 在命令行下面敲入sqlplus.提示“请输入用户名” 输入 / as sysdba,此时就连接到了sys用户下。
第二种方法:运行--> 敲入sqlplus /nolog,然后conn / as sysdba.
nolog是不登陆的意思,只进入sqlplus程序提示界面,等待你输入命令。
select status from v$instance;
可以查看数据库状态,如果为open,则表明数据库已打开。
如果不为open,可以敲入命令:
startup force
强制打开数据库。以后介绍数据库启动的三个台阶:nomount,mount,open。
好,此时连接到的是sys用户,也就是数据库的老大。我们都知道oracle下面有一个scott用户,我们可以尝试连接一下。
SQL> conn scott/tiger
ERROR:
ORA-28000: the account is locked
提示用户scott的状态是locked,即是锁定的。此时,需要重新连接到sys用户,将scott用户解锁。代码如下:
SQL> conn / as sysdba
已连接。
SQL> alter user scott account unlock;
用户已更改。
再次连接到scott 用户下:
SQL> conn scott/tiger
已连接。
成功。
总结:1. 启动监听:lsnrctl start 停止监听使用:lsnrctl stop
2. 启动实例服务:net start OracleServiceXXX(XXX为实例名)
停止实例服务:net stop OracleServiceXXX
注:后面不可加“;”
可以使用下面命令查看数据库实例名
SQL> show parameter instance_name
3. 连接用户使用“conn 用户名/密码”, 连接老大sys使用“conn / as sysdba”;
4. 解锁用户(sys下):alter user 用户名 account unlock; 同理,锁定一个用户使用命令:alter user 用户名 account lock;