实例管理
监听
启动监听:
$ netstat -tlnp | grep 1521 //用netstat查看网络状态
$ lsnrctl
LSNRCTL> help
$ lsnrctl status // 查看监听状态
$ lsnrctl stop //关闭监听
$ netstat -tln | grep 1521 //用netstat查看网络状态
em
启动EM:
$ netstat -tlnp | grep 1158
$ echo $ORACLE_SID
orcl
$ echo $ORACLE_UNQNAME
orcl
如果没有设置ORACLE_UNQNAME:
$ export ORACLE_UNQNAME=orcl
或
$ vi .bash_profile
export ORACLE_UNQNAME=orcl
$ . .bash_profile
确保主机名正常解析:
$ cat /etc/hosts 查看主机信息
$ emctl status dbconsole
$ emctl stop dbconsole
$ emctl start dbconsole
查看oem的端口:
$ find /u01 -name portlist.ini
重新配置em:
$ emca
$ emca -deconfig dbcontrol db
$ emca -config dbcontrol db
数据库:
启动实例:
$ ls $ORACLE_HOME/dbs/spfileorcl.ora
SQL> shutdown immediate
SQL> startup nomount //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; //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; //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
参数管理
参数文件:
$ 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;
SQL> show parameter processes 值为150
$ cat $ORACLE_HOME/dbs/spfileorcl.ora
*.processes=300
重启数据库,静态参数修改生效:
SQL> shutdown immediate
SQL> startup
SQL> show parameter processes 值为300