ORACLE的连接数(sessions)与其参数文件中的进程数(process)有关,它们的关系如下:
sessions=(1.1*process+5)
以下是两种修改方式:
一、命令方式修改
以sysdba权限登录:sqlplus sys/123456 AS SYSDBA(后边用nolog不行)
SQL> show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 150
SQL> alter system set processes=300 scope = spfile;
系统已更改。
SQL> show parameter processes;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 1
db_writer_processes integer 1
job_queue_processes integer 10
log_archive_max_processes integer 1
processes integer 150
SQL> create pfile from spfile;
文件已创建。
重启数据库,OK!
二、通过修改oracle配置文件进行修改
修改SPFILEORCL.ORA文件中的processes的值。8.1.5中是init.ora文件,在9i中修改init.ora文件是无效的,这个文件由于是一个二进制的文件,不能直接使用notepad此类的编辑器打开,
否则会报错误ORA-27101 Shared memory realm does not exist。使用UltraEdit或者EditPlus之类的可以编辑二进制文件的编辑器打开此文件(直接编辑二进制文件),然后在Windows服务中重新启动Oracle服务器即可。
win2003 怎样重启oracle数据库
命令行中如下输入关闭数据库 set ORACLE_SID=你的数据库SID名字 sqlplus /nolog SQL> connect / as sysdba SQL> shutdown immediate SQL> exit 命令行中如下输入启动数据库 set ORACLE_SID=你的数据库SID名字 sqlplus /nolog SQL> connect / as sysdba SQL> startup SQL> exit
重启之前可设置ORACLE_SID环境变量,以指定重启的实例。
export ORACLE_SID=oracle92
#su - oracle
#sqlplus /nolog
sql>connect /as sysdba
sql>startup
--此是关闭数据库的操作
sql>shutdown
监听程序的启动:
lsnrctl service
start
stop
tnsping 查看客户端sqlnet.ora和tnsname.ora文件的配置正确与否,及对应的服务器的listener进程的状态。
在进入后就可以进行下面的操作了!
先说关闭数据库
shutdown有四个参数,四个参数的含义如下:
Normal 需要等待所有的用户断开连接
Immediate 等待用户完成当前的语句
Transactional 等待用户完成当前的事务
Abort 不做任何等待,直接关闭数据库
normal需要在所有连接用户断开后才执行关闭数据库任务,所以有的时候看起来好象命令没有运行一样!在执行这个命令后不允许新的连接
immediate在用户执行完正在执行的语句后就断开用户连接,并不允许新用户连接。
transactional 在拥护执行完当前事物后断开连接,并不允许新的用户连接数据库。
abort 执行强行断开连接并直接关闭数据库。
前三种方式不回丢失用户数据。第四种在不的已的情况下,不建议采用!
数据库的启动
数据库启动使用startup命令,它有三种情况
第一种:不带参数,启动数据库实例并打开数据库,以便用户使用数据库,在多数情况下,使用这种方式!
第二种:带nomount参数,只启动数据库实例,但不打开数据库,在你希望创建一个新的数据库时使用,或者在你需要这样的时候使用!
第三种:带mount参数,在进行数据库更名的时候采用。这个时候数据库就打开并可以使用了!
谢谢!不准确的地方请指教!
请教oracle关闭后,重启日志文件损坏不能重启
我的oracle原先是好的,但是前不久异常断电后,如果关闭oracle再重启就不成功。
SQL> shutdown abort;(如果用immediate要等待很久很久)
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 1218316 bytes
Variable Size 79694068 bytes
Database Buffers 83886080 bytes
Redo Buffers 2973696 bytes
Database mounted.
ORA-16038: log 2 sequence# 8 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 2 thread 1: '/opt/oracle/oradata/ORCL/redo02.log'
ORA-00312: online log 2 thread 1: '/opt/oracle/oradata/ORCL/redo05.log'
SQL> alter database clear unarchived logfile group 2;
Database altered.
SQL> alter database open;
atabase altered.(这里启动成功,可以应用,但是如果关闭数据库,下次报同样的错误,每次都要如此的清除日志文件)
每次正常关闭oracle后都必须清除日志文件内容,再启动数据库。环境是oracle10g+unix。
我不清楚什么原因了。日志文件做了镜像也出错,上面的redo02和redo05就是第二组日志文件。