您的位置:首页 > 数据库 > Oracle

Linux oracle命令大全

2013-10-21 14:26 477 查看
一、启动:

1.#su - oracle 切换到oracle用户且切换到它的环境

2.$lsnrctl status 查看监听及数据库状态

3.$lsnrctl start 启动监听

4.$sqlplus / as sysdba 以DBA身份进入sqlplus

5.SQL>startup 启动db

二、停止

1.#su - oracle 切换到oracle用户且切换到它的环境

2.$lsnrctl stop 停止监听

3.$sqlplus / as sysdba 以DBA身份进入sqlplus

4.SQL>SHUTDOWN IMMEDIATE 关闭db

三,查看初始化参数及修改

1.#su - oracle 切换到oracle用户且切换到它的环境

2.$sqlplus / as sysdba 以DBA身份进入sqlplus

3.SQL>show parameter session; 查看所接受的session数量

######################################################

Oracle process与session2008年12月29日 星期一 15:47

Connected to Oracle Database 10g Release 10.1.0.5.0

Connected as ifsapp

SQL> show parameter session

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

java_max_sessionspace_size integer 0

java_soft_sessionspace_limit integer 0

license_max_sessions integer 0

license_sessions_warning integer 0

logmnr_max_persistent_sessions integer 1

session_cached_cursors integer 0

session_max_open_files integer 10

sessions integer 225

shared_server_sessions integer

SQL> show parameters processes;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

aq_tm_processes integer 0

db_writer_processes integer 1

gcs_server_processes integer 0

job_queue_processes integer 3

log_archive_max_processes integer 2

processes integer 200

SQL> alter system set processes=600 scope=both;

SQL>

SQL> alter system set processes=600 scope=both;

alter system set processes=600 scope=both

ORA-02095: specified initialization parameter cannot be modified

SQL> alter system set sessions=600 scope=both;

alter system set sessions=600 scope=both

ORA-02095: specified initialization parameter cannot be modified

SQL>

SQL> alter system set processes=600 scope=spfile;

System altered

SQL> show parameters processes;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

aq_tm_processes integer 0

db_writer_processes integer 1

gcs_server_processes integer 0

job_queue_processes integer 3

log_archive_max_processes integer 2

processes integer 200

SQL> alter system set processes=600 scope=memory;

alter system set processes=600 scope=memory

ORA-02095: specified initialization parameter cannot be modified

重启数据库之后生效:

SQL> show parameters processes;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

aq_tm_processes integer 0

db_writer_processes integer 1

gcs_server_processes integer 0

job_queue_processes integer 3

log_archive_max_processes integer 2

processes integer 600

SQL> show parameter session

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

java_max_sessionspace_size integer 0

java_soft_sessionspace_limit integer 0

license_max_sessions integer 0

license_sessions_warning integer 0

logmnr_max_persistent_sessions integer 1

session_cached_cursors integer 0

session_max_open_files integer 10

sessions integer 665

shared_server_sessions integer

修改Oracle process 和 session 的方法

先备份spfile

1.通过SQLPlus修改

Oracle的sessions和processes的关系是

sessions=1.1*processes + 5

使用sys,以sysdba权限登录:

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=400 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!

【注:sessions是个派生值,由processes的值决定,公式sessions=1.1*process + 5】

2.通过修改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服务器即可。

3.通过Oracle Enterprise Manager Console在图形化管理器中修改

a.以系统管理员的身份登入

b.进入数据库的例程-配置-一般信息-所有初始化参数

c.修改processes的值

d.Sessions的值由公式sessions=1.1*process + 5派生得到

一个process可以有0个,1个或多个session

=============================================

Oracle中系统process与session的关系

在实际的应用中,Shared Server中的Process与Oracle数据库中的Session并不是一一对应的,Shared Server中的Process(一个)对应着Oracle中的一个或者一个以上的Session。

  在dedicated server机器上的测试如下:

  数据库的session和操作系统process是对应的。

  这表示一个session对应一个process,但是一个process未必对应一个session。

  大家可以通过SELECT spid

  FROM v$process

  WHERE NOT EXISTS ( SELECT 1

  FROM v$session

  WHERE paddr = addr); 查看

  或

  SQL> select count(*) from v$process;

  COUNT(*)

  ----------

  53

  SQL> select count(*) from v$session;

  COUNT(*)

  ----------

  50

oracle10g中只要指定processes,sessions就会自动计算出,所以不需要指定sessions也可,除非对sessions有特殊要求,要求其比oracle自动计算出的sessions要大,那么就需要手动指定sessions了

#########################################################

4.SQL>alter system set shared_servers=10; 将shared_servers的数量设置为10

四.数据库连接数目

其中一个数据库连接需要一个session,它的值由processes决定,session与processes通常有以下关系:

session = 1.1 * processes + 5

不过这也不是绝对的,还要受到CPU和内存等硬件条件的限制。另外processes和session不可以通过alter system语句直接修改,只可以修改服务器参数文件来更改(Server Parameter File)。如果存在一个server parameter file,通过alter system语句所作的更改将会被持久化到文件中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: