t oracle删除吗,Oracle 11g 手工建库与删库

Oracle 11g 手工建库与删库

在前一篇文章中提到阅读Oracle 11gR2 Administrator‘s

Guide(文档编号E25494-01)时,简单描述了DDL_LOCK_TIMEOUT参数。在Oracle 11gR2

Administrator‘s Guide文档的chapter 2 Creating and Configuring an

Oracle Database章节时,提到手工建库,本文简单记录一下,如何在OEL 5.5

X86_64位环境下,手工创建及删除11.2.0.1.0的数据库,将文件放到文件系统上存放。当然,利用DBCA来建库、删库比较简单,就不再赘述了。具体操作步骤如下:

1 前提条件,操作系统上已经安装好Oracle 11gR2 的软件

其中环境变量ORACLE_BASE=/u01/app/oracle,ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1;

[root@OCM11g ~]# su - oracle

OCM11g-> env | grep ORA

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

OCM11g->

2 确认环境变量

本例中选择ORACLE_SID=manualdb,ORACLE_HOME选用原有的/u01/app/oracle/product/11.2.0/db_1;

OCM11g-> iduid=1101(oracle) gid=1000(oinstall) groups=1000(oinstall),1201(asmdba),1300(dba),1301(oper)OCM11g-> uname -rm2.6.18-194.el5 x86_64OCM11g-> export ORACLE_SID=manualdbOCM11g-> env | grep ORAORACLE_SID=manualdbORACLE_BASE=/u01/app/oracleORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1OCM11g->

3 创建初始化参数文件

这里将参数文件放到系统默认的路径下,即$ORACLE_HOME/dbs,命名为initmanualdb.ora,其内容如下:

OCM11g-> cat /u01/app/oracle/product/11.2.0/db_1/dbs/initmanualdb.ora

db_name=manualdb

memory_target=600m

OCM11g->

简单起见,我们只在初始化参数文件中指定了db_name,memory_target这两个参数。我们知道,启动数据库实例的最少参数只需要一个db_name即可,这里选择db_name=manualdb,附加一个memory_target=600m,这个是11g的新参数,用于控制SGA+PGA的总大小。当然,也可以在参数文件中指定control_files,如果该参数被忽略的话,那么Oracle会自动在$ORACLE_HOME/dbs路径下创建一个名为cntrl$ORACLE_SID.dbf的控制文件。

4 准备将来存放数据文件、日志文件的路径。

这两类文件的路径如下:

datafile:

OCM11g-> mkdir -p /u02/manualdb/oradata

online log:

OCM11g-> mkdir -p /u02/manualdb/onlinelogOCM11g-> ll /u02/manualdb/total 8drwxr-xr-x 2 oracle oinstall 4096 Mar 30 10:56 onlinelogdrwxr-xr-x 2 oracle oinstall 4096 Mar 30 10:56 oradataOCM11g->

5 启动manualdb实例到NOMOUNT状态

其实,在该环境下,我们的控制文件尚未生成,实例至多也只能加载到NOMOUNT状态:

OCM11g-> id

uid=1101(oracle) gid=1000(oinstall) groups=1000(oinstall),1201(asmdba),1300(dba),1301(oper)

OCM11g-> env | grep ORA

ORACLE_SID=manualdb

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

OCM11g-> sqlplus

SQL*Plus: Release 11.2.0.1.0 Production on Fri Mar 30 10:59:32 2012

Copyright (c) 1982, 2009, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup

ORACLE instance started.

Total System Global Area 626327552 bytes

Fixed Size 2215944 bytes

Variable Size 373297144 bytes

Database Buffers 243269632 bytes

Redo Buffers 7544832 bytes

ORA-00205: error in identifying control file, check alert log for more info

SQL>

上述报错ORA-00205提示控制文件找不到,正是我们所预见的,因为当前控制文件还未生成,所以数据库没法MOUNT,说明数据库是NOMOUNT状态。这时,也可以看到相关的后台进程已经启动:

SQL> !

OCM11g-> ps -ef | grep ora_|grep -v grep

oracle 14885 1 0 11:02 ? 00:00:00 ora_pmon_manualdb

oracle 14887 1 0 11:02 ? 00:00:00 ora_vktm_manualdb

oracle 14891 1 0 11:02 ? 00:00:00 ora_gen0_manualdb

oracle 14893 1 0 11:02 ? 00:00:00 ora_diag_manualdb

oracle 14895 1 0 11:02 ? 00:00:00 ora_dbrm_manualdb

oracle 14897 1 0 11:02 ? 00:00:00 ora_psp0_manualdb

oracle 14899 1 0 11:02 ? 00:00:00 ora_dia0_manualdb

oracle 14903 1 6 11:02 ? 00:00:27 ora_mman_manualdb

oracle 14905 1 0 11:02 ? 00:00:01 ora_dbw0_manualdb

oracle 14907 1 0 11:02 ? 00:00:00 ora_lgwr_manualdb

oracle 14909 1 0 11:02 ? 00:00:00 ora_ckpt_manualdb

oracle 14911 1 0 11:02 ? 00:00:00 ora_smon_manualdb

oracle 14913 1 0 11:03 ? 00:00:00 ora_reco_manualdb

oracle 14915 1 0 11:03 ? 00:00:00 ora_mmon_manualdb

oracle 14917 1 0 11:03 ? 00:00:00 ora_mmnl_manualdb

OCM11g->

6 执行下述CREATE DATABASE的命令,开始手工创建Oracle 数据库:

SQL> conn / as sysdba;

Connected.

SQL> select open_mode from v$database;select open_mode from v$database

*ERROR at line 1:

ORA-01507: database not mounted

手工建库脚本:

CREATE DATABASE manualdb USER SYS IDENTIFIED BY oracle USER SYSTEM IDENTIFIED BY oracle LOGFILE GROUP 1 ('/u02/manualdb/onlinelog/redo01a.log') SIZE 50M BLOCKSIZE 512, GROUP 2 ('/u02/manualdb/onlinelog/redo02a.log') SIZE 50M BLOCKSIZE 512 MAXLOGFILES 5 MAXLOGMEMBERS 5 MAXLOGHISTORY 1

MAXDATAFILES 100 CHARACTER SET AL32UTF8 NATIONAL CHARACTER SET AL16UTF16 EXTENT MANAGEMENT LOCAL DATAFILE '/u02/manualdb/oradata/system01.dbf' SIZE 300M REUSE SYSAUX DATAFILE '/u02/manualdb/oradata/sysaux01.dbf' SIZE 300M REUSE DEFAULT TABLESPACE users DATAFILE '/u02/manualdb/oradata/users01.dbf' SIZE 5M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED DEFAULT TEMPORARY TABLESPACE tempts1

TEMPFILE '/u02/manualdb/oradata/temp01.dbf' SIZE 20M REUSE UNDO TABLESPACE undotbs DATAFILE '/u02/manualdb/oradata/undotbs01.dbf' SIZE 20M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

Database created.

SQL> select name,open_mode from v$database;

NAME OPEN_MODE

--------- --------------------

MANUALDB READ WRITE

SQL>

7 创建数据字典视图,分别执行下述脚本来完成:

SQL> @?/rdbms/admin/catalog.sql

......

......SQL> @?/rdbms/admin/catproc.sql

......

......SQL> @?/sqlplus/admin/pupbld.sql

......

......

上述3个脚本的说明见下表:

The Scripts and

descriptions|------|------||Script|Description||CATALOG.SQL|Creates

the views of the data dictionary tables,the dynamic performance

views,and public synonyms for many of the views.Grants PUBLIC

access to the synonyms.||CATPROC.SQL|Runs all scripts required for

or used with PL/SQL.||PUPBLD.SQL|Required for SQLPlus. Enables

SQLPlus to disable commands by user.|

8 至此,我们完成了手工创建Oracle 数据库。

SQL> select * from v$version;

BANNER

--------------------------------------------------------------------------------

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

PL/SQL Release 11.2.0.1.0 - Production

CORE 11.2.0.1.0 Production

TNS for Linux: Version 11.2.0.1.0 - Production

NLSRTL Version 11.2.0.1.0 - Production

5 rows selected.

SQL> select name,open_mode from v$database;

NAME OPEN_MODE

--------- --------------------

MANUALDB READ WRITE

1 row selected.

SQL> select name from v$datafile 2 union 3 select name from v$controlfile 4 union 5 select member from v$logfile;

NAME

--------------------------------------------------------------------------------/u01/app/oracle/product/11.2.0/db_1/dbs/cntrlmanualdb.dbf/u02/manualdb/onlinelog/redo01a.log/u02/manualdb/onlinelog/redo02a.log/u02/manualdb/oradata/sysaux01.dbf/u02/manualdb/oradata/system01.dbf/u02/manualdb/oradata/undotbs01.dbf/u02/manualdb/oradata/users01.dbf

7 rows selected.

SQL>

9 最后,如果该数据库不需要的话。我们可以执行手工删除数据库

当然必须要将数据库启动到MOUNT RESTRICT状态来删除:

如何确认实例是否是RESTRICTED MODE:

SQL> select instance_name,status,startup_time,logins from v$instance;

INSTANCE_NAME STATUS STARTUP_TIME LOGINS

--------------- ------------ ------------------- ----------

manualdb MOUNTED 2012/03/30 13:38:52 ALLOWED

1 row selected.

SQL> alter system enable restricted session;

System altered.

SQL> select instance_name,status,startup_time,logins from v$instance;

INSTANCE_NAME STATUS STARTUP_TIME LOGINS

--------------- ------------ ------------------- ----------

manualdb MOUNTED 2012/03/30 13:38:52 RESTRICTED

1 row selected.

SQL> alter system disable restricted session;

System altered.

SQL> select instance_name,status,startup_time,logins from v$instance;

INSTANCE_NAME STATUS STARTUP_TIME LOGINS

--------------- ------------ ------------------- ----------

manualdb MOUNTED 2012/03/30 13:38:52 ALLOWED

1 row selected.

SQL>

通过查看V$INSTANCE动态性能视图的LOGINS字段,如果该值为ALLOWED,说明实例是正常启动,并未进入RESTRICTED

MODE,普通用户可以正常访问;如果该值为RESTRICTED说明是RESTRICTED MODE,即需要具有RESTRICTED

SESSION系统权限的用户方可访问;

手工删除数据库:

SQL> select instance_name,status,startup_time,logins from v$instance;

INSTANCE_NAME STATUS STARTUP_TIME LOGINS

--------------- ------------ ------------------- ----------

manualdb MOUNTED 2012/03/30 13:38:52 ALLOWED

1 row selected.

SQL> drop database;

drop database

*ERROR at line 1:

ORA-12719: operation requires database is in RESTRICTED mode

SQL> alter system enable restricted session;

System altered.

SQL> select instance_name,status,startup_time,logins from v$instance;

INSTANCE_NAME STATUS STARTUP_TIME LOGINS

--------------- ------------ ------------------- ----------

manualdb MOUNTED 2012/03/30 13:38:52 RESTRICTED

1 row selected.

SQL> drop database;

Database dropped.

Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL>

此时,Oracle自动删除该数据库的所有数据文件、联机重做日志文件、控制文件以及初始化参数文件。从alert日志文件里可以看到下述信息:

Fri Mar 30 13:45:33 2012drop database

Deleted file /u02/manualdb/oradata/system01.dbf

Deleted file /u02/manualdb/oradata/sysaux01.dbf

Deleted file /u02/manualdb/oradata/undotbs01.dbf

Deleted file /u02/manualdb/oradata/users01.dbf

Deleted file /u02/manualdb/onlinelog/redo01a.log

Deleted file /u02/manualdb/onlinelog/redo02a.log

Deleted file /u02/manualdb/oradata/temp01.dbf

Deleted file /u01/app/oracle/product/11.2.0/db_1/dbs/snapcf_manualdb.f

10 简单总结,可见手工创建、删除数据库也很简单。

当然,在第6步中执行手工建库的命令中还有诸多其它选项,比如选择OMF,这时,只要在参数文件中指定DB_CREATE_FILE_DEST参数,那么建库的命令将更加简单。

转:http://www.oracleonlinux.cn/2012/03/11gr2-manual-create-database/​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/354044.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oracle连接满报错日志,Oracle归档日志满了导致Oracle连接(ORA-00257)报错处理

最近一段时间,有收到一台Oracle服务器的连接告警, 刚刚开始还以为是Oracle的监听被关闭导致,结果连上服务器看下Oracle的监听进程正常,自己连接一次发现有报ORA-00257错,又去监控系统中在看下日志再用sqlplus连上Oracl…

微信登陆超时 重新登录_重新登录:重新登录

微信登陆超时 重新登录嗨,我再次感到非常高兴,认为日志记录是任何应用程序设计和开发的固有部分。 我是坚强的基础知识的忠实拥护者,以我的拙见,日志记录是任何企业级应用程序中经常被忽略但基本的关键要素之一。 我已经写在此之前…

HBase错误:ERROR: Can't get master address from ZooKeeper; znode data == null 解决办法

一、问题背景 使用命令 $ hbase shell 进入hbase的shell之后使用create命令创建表时出现错误&#xff1a;ERROR: Cant get master address from ZooKeeper; znode data null 二、解决方法 检查${HBASE_HOME}/conf/hbase-site.html的属性hbase.rootdir <property><na…

oracle中OEM证书失效怎么办,安全证书过期怎么办 网站安全证书失效处理【解决方法】...

安全证书过期怎么办?所谓的网站安全证书是通过在客户端浏览器和Web服务器之间建立一条SSL安全通道保证了双方传递信息的安全性&#xff0c;而且用户可以通过服务器证书验证他所访问的网站是否真实可靠。下面&#xff0c;我们就来看看网站安全证书失效处理方法。一、计算机中的…

JavaFX缺少的功能调查:表视图

JavaFX的TableView&#xff08;和TreeTableView&#xff09;赢得了我最近的“ JavaFX缺失功能”调查以及许多后续讨论中&#xff08;尤其是苏黎世JavaFX Meetup小组的成员 &#xff09;中提到最多的控件的价格。 &#xff09;。 我想原因之一是一个简单的事实&#xff0c;即几乎…

快速幂矩阵快速幂

快速幂 题目链接&#xff1a;https://www.luogu.org/problemnew/show/P1226 快速幂用了二分的思想&#xff0c;即将\(a^{b}\)的指数b不断分解成二进制的形式&#xff0c;然后相乘累加起来&#xff0c;就是用\(a^{b/2}a^{b/2}\)去求\(a{^b}\)。 例如:\(a^{11}a^{(2^02^12^3)}\)…

前端项目里常见的十种报错及其解决办法

错误一&#xff1a;Uncaught TypeError: Cannot set property onclick of nullat operate.js:86图片.png原因&#xff1a;当js文件放在head里面时&#xff0c;如果绑定了onclick事件&#xff0c;就会出现这样的错误&#xff0c;是因为W3School的写法是浏览器先加载完按钮节点才…

监控oracle数据io,Prometheus监控Oracle数据库

背景本文简单介绍下&#xff0c;Prometheus如何通过exporters监控Oracle数据库&#xff0c;以及应该注意哪些指标。oracledb_exporteroracledb_exporter是一个连接到Oracle数据库并生成Prometheus metrics的应用程序&#xff0c;设置展示下如何安装和设置oracledb_exporter&…

默认HotSpot最大直接内存大小

在我以前的博客文章热点选项中的Java 8改进的文档 &#xff0c;我写的误解围绕热点JVM非标准的默认设置选项 -XX:MaxDirectMemorySize 。 在本文中&#xff0c;我介绍了一种确定HotSpot JVM中“默认”最大直接内存大小的简单方法。 Java启动器的Java 8文档针对-XX:MaxDirectMe…

window 下 Atom 侧边栏字体大小设置

在 File 处找到 Settings 点击找到 Themes 点击找到 your stylesheet 点击在 .tree-view 处设置即可, (按照 css 样式来写即可保存生效)。转载于:https://www.cnblogs.com/zhourongcode/p/8521317.html

php workman 多线程,workerman如何多线程

Workerman有一个依赖pthreads扩展的MT多线程版本&#xff0c;但是由于pthreads扩展还不够稳定&#xff0c;所以这个Workerman多线程版本已经不再维护。 (推荐学习&#xff1a; workerman教程)workerman\mqtt 是一个基于workerman的异步mqtt 客户端库&#xff0c;可用于接收或者…

python面向对象封装

封装是指将功能模块化&#xff0c;比如&#xff0c;我们写了一个求和函数就是封装&#xff0c;函数使用者不需要了解函数内部是如何实现求和的&#xff0c;只需要调用我们写好的函数就行了。把很多数据封装到一个对象中&#xff0c;把固定功能的代码封装到一个代码块&#xff0…

Java嵌入oracle,Java插入Oracle Spatial空间数据

Java读取地理信息数据文件&#xff0c;并将其存入Oracle数据库。package file;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.Res…

js Object的属性 Configurable,Enumerable,Writable,Value,Getter,Setter

对象的数据属性 Configurable,Enumerable,Writable,Value var person {} Object.defineProperty(person,name,{configurable:false,//能否使用delete、能否需改属性特性、或能否修改访问器属性、&#xff0c;false为不可重新定义&#xff0c;默认值为true enumerable:false,//…

SpringBoot AutoConfiguration魔术如何工作?

在我以前的文章中&#xff0c; 为什么选择SpringBoot&#xff1f; 我们已经研究了如何创建SpringBoot应用程序。 但是您可能会也可能不会了解幕后发生的事情。 您可能想了解SpringBoot自动配置背后的魔力。 但是在此之前&#xff0c;您应该了解Spring的Conditional功能&#x…

linux常用网络命令详解,linux网络命令详解(鸟哥)

[rootlinux ~]# tcpdump [-nn] [-i 介面] [-w 儲存檔名] [-c 次數] [-Ae][-qX] [-r 檔案] [所欲擷取的資料內容]參數&#xff1a;-nn&#xff1a;直接以 IP 及 port number 顯示&#xff0c;而非主機名與服務名稱-i &#xff1a;後面接要『監聽』的網路介面&#xff0c;例如 et…

Bzoj2694/Bzoj4659:莫比乌斯反演

Bzoj2694/Bzoj4659:莫比乌斯反演先上题面:首先看到这数据范围显然是反演了&#xff0c;然而第三个限制条件十分不可做。于是我们暂且无视他&#xff0c;大不了补集转化算完再减是吧。于是我们有:这里我们定义:于是这个东西我们可以nlogn筛的说。也就是说&#xff0c;我们求出f的…

linux系统嵌入式编译环境,Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解...

Linux版本&#xff1a;Ubuntu 12.04 内核版本&#xff1a;Linux 3.5.0 交叉编译器版本&#xff1a;arm-linux-gcc-4.4.3 交叉编译器下载 见这篇文章http://www.linuxidc.com/Linux/2011-05/35906.htm安装前的絮叨首先简单介绍一下&#xff0c;所谓的搭建交叉编译环境&#xff0…

JUnit 5 –下一代JUnit的初步了解

2月初&#xff0c; JUnit 5&#xff08;又名JUnit Lambda&#xff09;团队发布了一个alpha版本。 由于JUnit 4是我工具箱中使用最频繁的项目之一&#xff0c;因此我认为值得一看下一个主要版本。 我试用了最新版本&#xff0c;并记下了我在这里发现值得注意的更改。 安装JUni…

Geany——Python配置

Geany是一个很不错的编辑器&#xff0c;操作很简单&#xff0c;这里记录一下Geany的入手设置&#xff08;在下是一个Python程序猿&#xff0c;就以Python为例&#xff09;&#xff1a; 1&#xff1a;新建&#xff1a;选择 下拉菜单中的 main.py &#xff0c;然后就能生成Pyth…