Oracle的启动
sqlplus sys/123456 as sysdba
nomount 模式 (加载实例和spfile)
startup nomount 只启动实例(装载实例和打开参数文件)
alter database mount 改变数据库从nomount状态到mount状态mount 加载控制文件(记录数据文件和日志文件的位置)
startup mount 挂载数据库(装载实例和打开控制文件,激活某些功能,用户不能存取数据库可以进行实例或数据的恢复处理)
alter database mount 改变数据库从nomount状态到mount状态open 加载日志文件和数据文件
alter database open 打开数据库(此时才可以正常对数据库进行读写)
alter database open read only 将数据库打开到只读状态(用得特别少)其他方式
startup 直接打此命令默认选项为open直接打开数据库
startup force 重启数据库 【先shutdown abort ,然后startup ,生产中不会用,特别危险】
Oracle的关闭
- shutdown normal 需要等待所有事务/进程全部结束 才能关数据库【严谨性最好,但是没有人用】
- shutdown transactional 需要等待,但在等待过程中,先把空闲事务进程自动关闭,活动的等人工作完毕了,再关闭。
以上2种关闭方式,会话没有断开,我在往里面写数据,但是没有提交,那它就关闭不了数据库。所以一般很少用上述方式关闭
- 关闭操作系统
- shutdown abort 其实不准备写上这个的,希望你不要记住这个操作
- shutdown immediate 关闭之前同步数据【该同步数据的同步,没有同步的就释放掉,对于你当前的操作,它会告诉你失败了】(生产关闭数据库常用)
正常关闭过程:
- 关闭前端应用【如果有备库,就可以不用关闭应用,把JDBC连接指向备库】
- 检查备份集【备份是否完整、是否可用】
- 关闭监听
- 关闭数据库
- 重启操作系统
开启监听
- netmgr【进入oracle网络管理器】
这个是图形界面,不多说 - 直接修改配置文件
$ORACLE_HOME/network/admin/listener.oraLISTENER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = IP地址)(PORT = 1521)) )
- 监听器命令
lsnrctl start
lsnrctl stop
lsnrctl status - 远程连接
sqlplus system@pc:1521/prod
或者把信息以服务别名的形式写入到tnsnames.ora
同样是两种方式来配置服务别名
netmgr(图形界面,图太多)
直接修改配置文件
$ORACLE_HOME/network/admin/tnsname.oraDB88 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = dbc111)
)
)
```
校验 sqlplus sys/123456@DB88 as sysdba