数据库的开启和关闭
来源:互联网 发布:图形化编程软件有哪些 编辑:程序博客网 时间:2024/05/16 11:55
打开数据库的几种方法:
Startup nomount
Startup mount
Startup
Startup restricted 限制用户得访问,只对自己开放
Alter system disable restricted session 解除限制
Alter system enable restricted session 打开限制
Alter database open read only 以只读的方式打开
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
关闭数据库得几种方式:
Shutdown normal 等同于shutdown 等待所有用户断开与数据库得连接,其他用户不能连接进来。。。。。。。
Shutdown transactional 等待所有用户的事物结束后关闭数据库,一个事物结束后不能再发起一个事物,也不能让其他的用户登录进来,所有事物完成后,oracle关闭实例并释放内存,oracle将所有重做日志缓冲区和数据块缓冲区写入磁盘,数据库是一致的
Shutdown immediate
不允许用户连接进来,并断开所有用户连接,终止所有当前正在执行的事务,并对这些事务做回退,之所以这个命令发出后不能立刻关闭数据库,是因为数据库在忙于回退刚刚终止的事务,如果没有活动得事务,这shutdown很快完成。
Shutdown abort
硬生生得关闭数据库,中断事务,且不回退,不将重做日志缓冲区和数据缓冲区写入磁盘,所以数据库是不一致的,重启后需要执行实例回复。
是数据库处于停顿状态:
Alter database quiesce restricted
处于停顿得数据库有如下特点:
1、所有非活动的会话不允许发布任何数据库命令
2、允许所有活动会话完成;
3、允许新登录企图,但是需要排队,不会报错,但这些新登录企图都像被挂起一样
4、只有dba才能允许查询,事务和PL/SQL语句。
取消停顿状态:
Alter database unquiesce;
一旦取消停顿,则允许排队得用户登录,也允许不活动得事务转为活动。
数据库的挂起:
Alter system suspend
取消挂起
Alter system resume;
SQL> select instance_name,status,archiver,database_status from v$instance;
INSTANCE_NAME STATUS ARCHIVE DATABASE_STATUS
---------------- ------------ ------- -----------------
rain OPEN STOPPED ACTIVE
SQL> select name ,log_mode,flashback_on from v$database;
NAME LOG_MODE FLASHBACK_ON
--------- ------------ ------------------
RAIN NOARCHIVELOG NO
1、STARTUP NOMOUNT
NONOUNT选项仅仅创建一个Oracle实例。读取init.ora初始化参数文件、启动后台进程、初始化系统全局区(SGA)。Init.ora文件定义了实例的配置,包括内存结构的大小和启动后台进程的数量和类型等。实例名根据Oracle_SID设置,不一定要与打开的数据库名称相同。当实例打开后,系统将显示一个SGA内存结构和大小的列表,如下所示:
SQL> startup nomount // 本文来自技术世界www.js4j.com 技术论坛//
ORACLE 例程已经启动。
Total System Global Area 35431692 bytes
Fixed Size 70924 bytes
Variable Size 18505728 bytes
Database Buffers 16777216 bytes
Redo Buffers 77824 bytes
2、STARTUP MOUNT
该命令创建实例并且安装数据库,但没有打开数据库。Oracle系统读取控制文件中关于数据文件和重作日志文件的内容,但并不打开该文件。这种打开方式常在数据库维护操作中使用,如对数据文件的更名、改变重作日志以及打开归档方式等。在这种打开方式下,除了可以看到SGA系统列表以外,系统还会给出"数据库装载完毕"的提示。
3、STARTUP
该命令完成创建实例、安装实例和打开数据库的所有三个步骤。此时数据库使数据文件和重作日志文件在线,通常还会请求一个或者是多个回滚段。这时系统除了可以看到前面Startup Mount方式下的所有提示外,还会给出一个"数据库已经打开"的提示。此时,数据库系统处于正常工作状态,可以接受用户请求。
// 内容来自js4j.com//
如果采用STARTUP NOMOUNT或者是STARTUP MOUNT的数据库打开命令方式,必须采用ALTER DATABASE命令来执行打开数据库的操作。例如,如果你以STARTUP NOMOUNT方式打开数据库,也就是说实例已经创建,但是数据库没有安装和打开。这是必须运行下面的两条命令,数据库才能正确启动。
ALTER DATABASE MOUNT;
ALTER DATABASE OPEN;
而如果以STARTUP MOUNT方式启动数据库,只需要运行下面一条命令即可以打开数据库:
ALTER DATABASE OPEN.
4、其他打开方式
除了前面介绍的三种数据库打开方式选项外,还有另外其他的一些选项。
(1) STARTUP RESTRICT
这种方式下,数据库将被成功打开,但仅仅允许一些特权用户(具有DBA角色的用户)才可以使用数据库。这种方式常用来对数据库进行维护,如数据的导入/导出操作时不希望有其他用户连接到数据库操作数据。
(2) STARTUP FORCE
该命令其实是强行关闭数据库(shutdown abort)和启动数据库(startup)两条命令的一个综合。该命令仅在关闭数据库遇到问题不能关闭数据库时采用。
(3) ALTER DATABASE OPEN READ ONLY;
该命令在创建实例以及安装数据库后,以只读方式打开数据库。对于那些仅仅提供查询功能的产品数据库可以采用这种方式打开.
深刻理解Oracle数据库的启动和关闭
三、数据库的关闭(SHUTDOWN)
对于数据库的关闭,有四种不同的关闭选项,下面对其进行一一介绍。
1、SHUTDOWN NORMAL
这是数据库关闭SHUTDOWN命令的确省选项。也就是说如果你发出SHUTDOWN这样的命令,也即是SHUTDOWN NORNAL的意思。
发出该命令后,任何新的连接都将再不允许连接到数据库。在数据库关闭之前,Oracle将等待目前连接的所有用户都从数据库中退出后才开始关闭数据库。采用这种方式关闭数据库,在下一次启动时不需要进行任何的实例恢复。但需要注意一点的是,采用这种方式,也许关闭一个数据库需要几天时间,也许更长。
2、SHUTDOWN IMMEDIATE
这是我们常用的一种关闭数据库的方式,想很快地关闭数据库,但又想让数据库干净的关闭,常采用这种方式。
当前正在被Oracle处理的SQL语句立即中断,系统中任何没有提交的事务全部回滚。如果系统中存在一个很长的未提交的事务,采用这种方式关闭数据库也需要一段时间(该事务回滚时间)。系统不等待连接到数据库的所有用户退出系统,强行回滚当前所有的活动事务,然后断开所有的连接用户。
3、SHUTDOWN TRANSACTIONAL
该选项仅在Oracle 8i后才可以使用。该命令常用来计划关闭数据库,它使当前连接到系统且正在活动的事务执行完毕,运行该命令后,任何新的连接和事务都是不允许的。在所有活动的事务完成后,数据库将和SHUTDOWN IMMEDIATE同样的方式关闭数据库。
4、SHUTDOWN ABORT
这是关闭数据库的最后一招,也是在没有任何办法关闭数据库的情况下才不得不采用的方式,一般不要采用。如果下列情况出现时可以考虑采用这种方式关闭数据库。
1、 数据库处于一种非正常工作状态,不能用shutdown normal或者shutdown immediate这样的命令关闭数据库;
2、 需要立即关闭数据库;
3、 在启动数据库实例时遇到问题;
所有正在运行的SQL语句都将立即中止。所有未提交的事务将不回滚。Oracle也不等待目前连接到数据库的用户退出系统。下一次启动数据库时需要实例恢复,因此,下一次启动可能比平时需要更多的时间。
表1可以清楚地看到上述四种不同关闭数据库的区别和联系。
表1 Shutdown数据库不同方式对比表
关闭方式
A
I
T
N
允许新的连接
× ×
×
×
等待直到当前会话中止
× ×
×
√
等待直到当前事务中止
× ×
√
√
强制CheckPoint,关闭所有文件
×
√
√
√
其中:A-Abort I-Immediate T-Transaction N-Nornal
// 内容来自js4j.com//
- 数据库的开启和关闭
- Oracle数据库的开启和关闭
- oracle数据库开启和关闭
- Sybase数据库的开启关闭
- oracle数据库listener开启和关闭trace文件的方法
- oracle数据库listener开启和关闭trace文件的方法
- NSTimer的开启和关闭
- SElinux的开启和关闭
- redis的开启和关闭,
- oracle的开启和关闭
- CentOS 端口开启和关闭 防火墙的开启和关闭
- Oracle数据库的开启与关闭
- 开启,关闭数据库
- 内存数据库Altibase的开启关闭和进入sql命令行方法
- linux中oracle数据库|监听|EM的开启和关闭shell脚本
- Linux防火墙的开启和关闭
- FC8开启和关闭IPv6的方法
- Linux防火墙的关闭和开启
- ubuntu下安装Apache+PHP+Mysql
- 75道逻辑题答案61~75
- GCC入门知识(转载)
- 如何防止锻炼后肌肉酸痛?
- 求助
- 数据库的开启和关闭
- java变量,初始化快,构造函数的执行顺序
- NAT的完全分析及其UDP穿透的完全解决方案
- Unix 系统的优先数和优先权
- 第9章 转移指令的原理 笔记
- 每日单词20110507
- extern用法详解(转)
- 注重实效的哲学
- TCP实现P2P通信、TCP穿越NAT的方法、TCP打洞