oracle手动删除数据库
有时候,无法使用图形界面时,我们需要手动删除数据库,具体操作步骤如下:
一、手动删除文件系统数据库
1.停止监听,防止有新的连接产生,同时,在数据库配置了em的,也需要停止
$ lsnrctl stop listener_name
$ emctl stop dbconsole
2.获得数据文件,日志文件及控制文件的相关信息,包含归档
$ sqlplus /as sysdba
SQL>show parameter control
获取控制文件的路径
SQL>select file_name from dba_data_files;
获取数据文件的位置
SQL>select * from v$logfile;
获取日志文件的位置
SQL>archive log list;
获取归档日志的路径
SQL>shutdown immediate(abort);
关闭数据库,反正都要删除了,可以考虑用abort
3.启动到mount状态(使用exclusive restart)
SQL> startup mount exclusive restrict;
mount数据库到独占模式
SQL> show parameter instance;
查看是否是要删除的实例,这一步非常重要,。
4.修改参数为允许受限的会话模式
SQL>alter system enable restricted session;
5.使用drop database命令来清除数据库
SQL>drop database;
SQL>exit
6.手动清除相关文件
根据第2步查询的结果,删除相应的文件。
windows可以打开窗口,进入目录删除。linux可以使用rm删除
7.清除监听相关文件
11G以后,很多是动态注册的,所以不用考虑这一步。如果配置了静态监听的,需要删除listener.ora文件里的配置
8.修改oratab文件以及.bash_profile
二、清除ASM数据库
对于ASM数据库的删除与文件系统数据库的不同之处在于数据文件,控制文件,日志文件,参数文件等都是存放在ASM系统中,因此需要在ASM实例中做相应的动作来彻底清除数据库。
1.执行文件系统数据库清除步骤3-4步(先要shutdown)
2.使用drop database命令来清除数据库(该命令将清除数据文件,日志文件,temp文件)
SQL>drop database;
SQL>exit
3.连接到ASM实例
$ export ORACLE_SID=+ASM
$ sqlplus /as sysdba
4.清除残余文件
SQL>select name,file_number,group_number,file_incarnation from v$asm_alias;--查看文件,注意group_number表示位于不同的磁盘组
SQL>alter diskgroup ARCHDG1 drop directory '+ARCHDG1/asmdb/file_name'; --可以使用方式来删除需要删除的文件
SQL>alter diskgroup DATADG drop directory'+DATADG/asmdb/file_name';
SQL>select name,file_number,group_number,file_incarnation from v$asm_alias; --验证删除后的结果
也可以使用下面的方式(asmcmd命令)来删除残余文件
$ export ORACLE_SID=+ASM1
$ asmcmd
ASMCMD> ls -l
State Type Rebal Unbal Name
MOUNTED EXTERN N N ARCHDG1/
MOUNTED EXTERN N N DATADG/
ASMCMD> ls -s
Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Name
ARCHDG1/
DATADG/
ASMCMD> cd +ARCHDG1
ASMCMD> ls
ASMDB/
ASMCMD> rm -rf ASMDB
ASMCMD> ls
ASMCMD> cd +DATADG
ASMCMD> pwd
+DATADG
ASMCMD> ls
ASMCMD> cd +
ASMCMD> ls -s
Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Name
ARCHDG1/
DATADG/
对于直接位于磁盘组下的文件则同样可以使用rm命令来直接删除文件
5.清除其它文件
--$ORACLE_HOME/dbs/与该实例相关的文件;
--trace文件,这个根据版本不同,路径也不相同。11g为$ORACLE_BASE/diag/rdbms/sid_name 相关的实例目录
6.执行文件系统数据库清除步骤7-8步
转载自:datapeng原文链接:
http://blog.itpub.net/29371470/viewspace-2124984/
oracle手动删除数据库的更多相关文章
- 详解Oracle手动创建数据库几大步骤
在这里我们将介绍Oracle手动创建数据库几大步骤,包括前期的准备工作,以及具体的实施. Oracle手动创建数据库是本文介绍的重点,希望通过本文能帮助大家更好的利用Oracle.51CTO也向您推荐 ...
- ORACLE手工删除数据库
很多人习惯用ORACLE的DBCA工具创建.删除数据库,这里总结一下手工删除数据库实验的步骤,文中大量参考了乐沙弥的手动删除ORACLE数据库这篇博客的内容,当然还有Oracle官方相关文档.此处实验 ...
- 手动删除oracle数据库
--===================== -- 手动删除oracle数据库 --===================== 杀掉进程用此方法比较好,能保证杀得干净,而不是用sql 里面的语句ki ...
- oracle使用DataBase Configuration Assistant创建、删除数据库
可以使用DataBase Configuration Assistant来创建一个心得数据库.Database Configuration Assistant简称是DBCA,是创建.配置以及管理数据库 ...
- Oracle数据库管理之创建和删除数据库
转自:http://supportopensource.iteye.com/blog/678898 一.数据库管理概述 在完成Oracle软件安装后,DBA就应该对组织和管理数据库负责任,其主要任务是 ...
- Oracle 删除用户和表空间////Oracle创建删除用户、角色、表空间、导入导出、...命令总结/////Oracle数据库创建表空间及为用户指定表空间
Oracle 使用时间长了, 新增了许多user 和tablespace. 需要清理一下 对于单个user和tablespace 来说, 可以使用如下命令来完成. 步骤一: 删除user drop ...
- OpenStack手动从数据库中删除实例 - ugyn109的专栏 - 博客频道 - CSDN.NET
由于某种原因我将OpenStack的一个计算节点移除了,但移除前并没有删除在其上运行的实例,后来想通过dash删除这些实例,于是N天过去了,我的dash还显示如下内容:很碍眼是不是?于是我打算手动从数 ...
- oracle删除数据库
1.确认当前数据库是否为要删除的那一个select name from v$database; 2.关闭数据库shutdown immediate; 3.以restrict方式重新打开数据库,并启动到 ...
- oracle创建、删除 数据库、建立表空间以及插入 删除 修改表
一.创建.删除数据库 oracle OraDb11g_home->配置和移植工具->Database configration Assistant->...然后可以创建或者删除数据 ...
随机推荐
- SVN 不能提交, 看不到日志, 出现乱码. 解决方案.
需要工具 sprite3: 点这里下载. 解决问题 如本文标题所写. 我遇到过几次一样的问题, 每次都很蛋疼的把目录重新检出, 浪费时间, 又伤了脾气. 下面是我在百度经验找到的一片帖子, 效果杠杠的 ...
- [ JS 进阶 ] 如何改进代码性能 (3)
原文链接 总结一下 1.减少操作dom的次数 2.需要多次使用某全局变量的时候,将其赋给一个局部变量,避免重复查找 3.优化循环 4.多用逗号和直接赋值的方式来var,减少工厂方式和构造函数方式创建对 ...
- 编写可维护的javascript代码--- 2015.11.21(基本格式化)
1.1 每行的编码需要控制在80字符. 1.2 改用:的地方必须用上. 1.3 缩进用2个制表符,不过4个也可以. 1.4 当代码一行显示不全需要折行显示,这里我暂且假定缩进为4个字符. 1.5 如果 ...
- JQuery学习笔记【CSS选择符】--02
Jquery的程序入口: <html> <head> <title></title> <script type="text/javasc ...
- python3可变与不可变数据类型
Python3中有六个标准的数据类型: Number(数字) String(字符串) List(列表) Dictionary(字典) Tuple(元组) Set(集合) 我理解的可变就是当一个变量创建 ...
- python百科
Python 编辑词条 添加义项名 B 添加义项 ? Python(英语发音:/ˈpaɪθən/), 是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第 ...
- SAR-303 xml validator验证框架
// 配置文件详解 <mvc:annotation-driven validator="validator" /> <bean id="validato ...
- Ganglia + Nagios 初步实践
参考文档: http://www.bubuko.com/infodetail-715636.html http://www.linuxidc.com/Linux/2014-01/95804p2.htm ...
- 【HDOJ】5131 Song Jiang's rank list
STL的使用. /* 5131 */ #include <iostream> #include <map> #include <cstdio> #include & ...
- 【HDOJ】4986 Little Pony and Alohomora Part I
递推.设n个盒子的Spell次数为S(n),期望为E(n).当有n个盒子时,可能第n把钥匙在第n个盒子中,此时的Spell次数应该为(n-1)!+S(n-1):当第n把钥匙不在第n个盒子中,混合排列, ...