首页 > 代码库 > 8月4
8月4
创建数据库用dbca图形界面创建。
Listener监听服务 工作在1521端口 一个监听可以为所有的数据库服务,除了浏览器,em服务是和数据库一对一的。
OEM企业管理器:OEM for db control emctl对em 的控制命令 emca修改配置 lsnrctl管理监听
Em:emctl start | stop |status dbconsole
Portlist.ini
Listener:
Lsnrctl然后回车
Lsnrctl start |stop |status |service
数据库database:
如果是showdown 就用startup mount 不用加; 如果是nomount就用alter database mount;
启动实例:
$ ls $ORACLE_HOME/dbs/spfileorcl.ora
SQL> shutdown immediate 关闭
SQL> startup nomount 不加载状态
SQL> select status from v$instance;
SQL> select * from v$sgainfo;
SQL> select * from hr.employees;
SQL> conn hr/hr
SQL> startup mount或alter database mount; 加载状态
SQL> show parameter control_files 显示控制文件的参数值
SQL> select status from v$instance;
SQL> select * from v$controlfile;
SQL> select name from v$datafile;
SQL> select * from hr.employees;
SQL> conn hr/hr
SQL> startup或alter database open;
SQL> select status from v$instance;
SQL> select * from hr.employees;
SQL> conn hr/hr
关闭数据库:
SQL> shutdown normal 正常关闭
SQL> shutdown transactional 事务性关闭
SQL> shutdown immediate 立即关闭
SQL> shutdown abort 异常关闭
控制脚本:
$ vi /etc/oratab
$ vi $ORACLE_HOME/bin/dbstart 批量启动 可以扫描系统里的所有数据库
$ vi $ORACLE_HOME/bin/dbshut 批量关闭
重启数据库:
SQL> startup force 强行重启
startup force = shutdown abort + startup
startup force mount = shutdown abort + startup mount
练习:
熟悉3个服务的启动和关闭
参数管理
参数文件:
$ ls $ORACLE_HOME/dbs/spfileorcl.ora
预先备份:
$ cp spfileorcl.ora spfileorcl.ora.bak
不可以通过vi直接修改!
查看参数:
SQL> show parameter
SQL> select NAME, VALUE from v$parameter;
修改参数:
动态参数:当前内存的值改完立即生效,并写入到参数文件中。
$ strings $ORACLE_HOME/dbs/spfileorcl.ora|grep reource_limit
SQL> show parameter RESOURCE_LIMIT
SQL> alter system set RESOURCE_LIMIT=true;
SQL> show parameter RESOURCE_LIMIT
$ strings $ORACLE_HOME/dbs/spfileorcl.ora|grep reource_limit
静态参数:只写入文件,内存里的值不允许被修改,重启数据库可以看到。
$ strings $ORACLE_HOME/dbs/spfileorcl.ora|grep processes
*.processes=150
SQL> show parameter processes 值为150
SQL> alter system set processes=300 scope=spfile; scope指范围
SQL> show parameter processes 值为150
$ cat $ORACLE_HOME/dbs/spfileorcl.ora
*.processes=300
重启数据库,静态参数修改生效:
SQL> shutdown immediate
SQL> startup
SQL> show parameter processes 值为300
session级别修改参数: 动态参数在 会话级别修改 不会保存在参数文件中
SQL> select sysdate from dual;
SQL> alter session set nls_date_format=‘dd-mon rr‘;
SQL> select sysdate from dual; 只影响当前会话,不影响系统
SQL> conn / as sysdba
SQL> select sysdate from dual; 恢复默认设置
文本格式pfile/二进制格式spfile格式转换:
SQL> create pfile=‘/home/oracle/initorcl.ora‘ from spfile;
$ cat /home/oracle/initorcl.ora
$ mv $ORACLE_HOME/dbs/spfileorcl.ora $ORACLE_HOME/dbs/spfileorcl.ora.bak
SQL> shutdown immediate
SQL> create spfile from pfile=‘/home/oracle/initorcl.ora‘;
$ strings $ORACLE_HOME/dbs/spfileorcl.ora
指定参数文件启动数据库:
SQL> startup pfile=‘/home/oracle/initorcl.ora‘
练习:
修改resource_limit和processes参数。并在alert log中找到对应的信息。
警告日志和后台进程的转储文件
$ find /u01 -name alert_*.log
$ vi /u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log
SQL> show parameter dump
练习:
查看alert log中最近一次启动/关闭实例的详细信息。
查看alert log中记录的用户对参数所做的修改。
8月4