跳至主要内容

Oracle学习笔记20071220

数据库启动是STARTUP, NOMOUNT - MOUNT - OPEN
我们启动数据库,便是并不挂载数据库示例:
SQL>STARTUP NOMOUNT 

然后可以使用
SQL>ALTER DATABASE MOUNT
来挂上数据库。
使用
SQL>STARTUP MOUNT
来启动数据库,并挂载上数据库,但是保持数据库的关闭状态。 稍后可以使用
SQL>ALTER DATABASE OPEN
来打开数据库。
还可以在数据库的启动过程中限制数据库的访问:
SQL>STARTUP RESTRICT
来启动并装载打开数据库示例。
当然还可以在数据库的启动过程中限制数据库的访问:
SQL>STARTUP RESTRICT
来启动并装载打开数据库示例。
稍后可以使用:
SQL>ALTER SYSTEM DISABLE RESTRICTED SESSION

来取消数据库的受限制状态。
在数据库受限制的过程中,只有对数据库拥有CREATE SESSION权限的用户才能够连接到数据库。这种状态有利于对数据库进行备份,恢复,导入,导出等操作。
还有一个命令就是强迫数据库示例启动:
SQL>STARTUP FORCE
 

二、改变数据库的状态:
1、当你只是启动数据库,但是并不有装数据库时,也即是使用:STARTUP NOMOUNT来启动数据库时,必须使用ALTER DATABASE MOUNT来装载数据库,并启动示例。
2、打开一个关闭的数据库:
当你只是装载了数据库,但是保持数据库关闭的情况,也即是使用:
SQL>STARTUP MOUNT

来启动数据库时, 必须使用:
SQL>ALTER DATABASE OPEN
来打开一个关闭的数据库。
3、以只读或者是可读可写的方法打开数据库。注意:可读可写是默认的操作: 
SQL>ALTER DATABASE OPEN READ ONLY

恢复以:
SQL>ALTER DATABASE OPEN READ WRITE

4、在使用过程中对数据库进行限制:
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION

取消限制: 
SQL>ALTER SYSTEM DISABLE RESTRICTED SESSION
 
即可取消对数据库的限制。

三、数据库的关闭:
oracle的数据库关闭只有一个命令:SHUTDOWN,但是这个命令还有几个选项:NORMAL, IMMEIDATE, TRANSACTION, ABORT。
NORMAL是默认选项。表示正常的关闭,等候客户的请求完成,所有的事务提交,拒绝再次进行连接。
IMMEIDATE:立即关闭数据库,不允许新连接,事务回滚,下一次启动不需要任何恢复过程。 TRASACTION:不允许新连接,完成事务后,有连接的用户将被解除连接,下一次启动不需要任何恢复过程。 
ABORT:不允许新连接,马上断开所有的用户连接,终止事务,不回滚事务。下一次启动需要恢复过程。
插一个LINUX命令,查看单个文件大小可以时候du -sh ... 或者ls -lh ...查看硬盘使用情况df -h

修改CONTROLFILE
命令
SQL> ALTER SYSTEM SET control files
='$HOME/ORADATA/u01/ctrl01.ctl', 2 '$HOME/ORADATA/u02/ctrl02.ctl'
SCOPE=SPFILE;


Log switches can be forced using the ALTER
SQL> SYSTEM SWITCH LOGFILE

添加GROUP
SQL> ALTER DATABASE ADD LOGFILE GROUP
3('$HOME/ORADATA/u01/log3a.rdo','$HOME/ORADATA/u02/log3b.rdo') SIZE 1M

删除到GROUP
SQL> ALTER DATABASE DROP LOGFILE GROUP 3;

制定添加到GROUP
SQL>ALTER DATABASE ADD LOGFILE MEMBER '$HOME/ORADATA/u04/log1c.rdo' TO GROUP
1,'$HOME/ORADATA/u04/log2c.rdo' TO GROUP 2,'$HOME/ORADATA/u04/log3c.rdo' TO
GROUP 3;

删除一个成员
SQL>ALTER DATABASE DROP LOGFILE MEMBER '$HOME/ORADATA/u04/log3c.rdo';

清空LOG
SQL>ALTER DATABASE CLEAR LOGFILE '$HOME/ORADATA/u01/log2a.rdo';
下面是我上次做错的:这个是TABLESPACE
SQL>CREATE TABLESPACE userdata DATAFILE '/u01/oradata/userdata01.dbf'
SIZE 500M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K;
SQL>CREATE TABLESPACE userdataDATAFILE '/u01/oradata/userdata01.dbf'
SIZE 500M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K;

这个是UNDO TABLESPACE
SQL>CREATE UNDO TABLESPACE undo1 DATAFILE '/u01/oradata/undo101.dbf'
SIZE 40M
SQL>alter system set undo_tablespace='undotbs1'
scope=spfile;(目前看到的是这样的,但是具体为什么不能如同tablespace和temporary tablespace就不知道了)

这个是Temporary Tablespace
SQL>CREATE TEMPORARY TABLESPACE temp TEMPFILE '/u01/oradata/temp01.dbf' SIZE
500M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 10M;

当修改临时表空间的时候语句的步骤如同修改tablespace一样
SQL>alter user default temporary tablespace <临时表>

网页提供http://www.itpub.net/viewthread.php?tid=622120&extra=&page=2
Offline tablespace is not available for data access.
some tablespaces must be online:
-SYSTEM
-Tablespaces with active undo segments
-Default temporary
SQL>ALTER TABLESPACE userdata OFFLINE;
SQL>ALTER TABLESPACE userdata ONLINE;

将tablespace改成read only
SQL>ALTER TABLESPACE userdata READ ONLY;

Move the data file to the WORM drive
SQL>ALTER TABLESPACE ..RENAME DATAFILE ..;

删除tablespace
SQL>DROP TABLESPACE userdata INCLUDING CONTENTS AND DATAFILES;

评论

此博客中的热门博文

4 steps to delete account in Gerrit DB

4 steps to delete account in DB. Delete from accounts where preferred_email=’’; delete from account_ssh_keys where account_id=''; delete from account_external_ids where external_id='gerrit:*’; delete from account_external_ids where external_id='username:*’; whatever it was in H2 database and postgres db . H2: ssh -p 24198 localhost gerrit gsql Postgres: psql

mod

apache安装后,如果想再添加模块,往往不想重新安装一次,再者,我在安装中发现,并不是安装文件中所有的modules都会被默认安装,即使在安装中使用了 ./configure --prefix=/usr/local/apache --enable-so --enable-modules=all --enable-mods-shared=all也是如此。我使用上述方法安装的apache2.2.6就没有安装proxy相关模块。这时,需要手工生成so文件,但会自动的被复制到你的apache安装目录的modules中,然后修改apache的配置文件,加载相关模块,验证apache配置并重启服务即可。以上描述的具体操作步骤如下: 操作系统:linux redhat 4.5 ES apache版本:2.2.6 可自行下载tar包 1. 拷贝安装包到/usr/local,并在目标目录下进行解压。[root@localhost local]# cd /usr/local[root@localhost local]# tar -zxvf httpd-2.2.4.tar.gz2. 配置安装参数,安装的目标目录为/usr/local/apache,建议设置enable-mods-shared=all,不用的module注释掉就行了![root@localhost local]# cd httpd-2.2.4[root@localhost httpd-2.2.4]# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all3. 编译并安装。[root@localhost httpd-2.2.4]# make[root@localhost httpd-2.2.4]# make install4. 启动Apache,并测试。[root@localhost httpd-2.2.4]# cd /usr/local/apache/bin[root@localhost bin]# ./apachectl start 打开浏览器,并在地址栏中输入主机的IP地址如 http://192.168.1.254/ 如果出现以下画面则说明安装成功。It works! 注意:安装完成后检查系统服务中的HTTPD服务是否已