完全删除Oracle数据库的方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了完全删除Oracle数据库的方法相关的知识,希望对你有一定的参考价值。
参考技术A很多朋友只用了Oracle的删除 但很多情况下 他会发现重新安装时 点了下一步安装界面就消失了 往往无奈下只好重装系统 其实只是你数据库没删干净 删干净就不会出现这种情况了
实现方法
开始 >设置 >控制面板 >管理工具 >服务停止所有Oracle服务
开始 >程序 >Oracle OraHome >Oracle Installation Products >Universal Installer卸装所有Oracle产品 但Universal Installer本身不能被删除
运行regedit 选择HKEY_LOCAL_MACHINESOFAREORACLE 按del键删除这个入口
运行regedit 选择HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices 滚动
这个列表 删除所有Oracle入口
运行refedit HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesEventlogApplication 删除所有Oracle入口
开始 >设置 >控制面板 >系统 >高级 >环境变量 删除环境变量CLASSPATH和PATH中有关Oracle的设定
从桌面上 STARTUP(启动)组 程序菜单中 删除所有有关Oracle的组和图标
删除Program FilesOracle目录
重新启动计算机 重起后才能完全删除Oracle所在目录
删除与Oracle有关的文件 选择Oracle所在的缺省目录C:Oracle 删除这个入口目录及所有子目录 并从Windows 目录(一般为C:WINNT)下删除以下文件ORACLE INI oradim INI oradim INI oraodbc ini等等
WIN INI文件中若有[ORACLE]的标记段 删除该段
如有必要 删除所有Oracle相关的ODBC的DSN
到事件查看器中 删除Oracle相关的日志
说明
如果有个别DLL文件无法删除的情况 则不用理会 重新启动 开始新的安装 安装时 选择一个新的目录 则 安装完毕并重新启动后 老的目录及文件就可以删除掉了
选择安装Oracle i数据库服务器
选中Oracle i Database 单选按钮 其他选项适用于安装客户端软件或管理软件 单击[下一步]按钮 继续安装
选择你所需要的安装类型 通常选用功能齐全的[企业版] 针对安装目的的不同 选择所需要的数据库
图
如果你对安装Oracle i还不熟悉的话 建议选中[通用]单选按钮 如图 所示这种安装类型将会帮助你自动配置网络连接和创建数据库
*选项说明 通用 安装通用目的的预配置数据库 通用类型适用于简单的事务处理或复杂的查询 支持大量并发用户对数据的快速访问 它既可用于事务处理环境的典型应用 也可用于决策支持系统即DSS查询 并能对历史数据进行数据扫描 事务处理 ——安装优化事务处理的预配置数据库 事务处理类型支持大量并发用户执行简单的事务处理 可以提供较高的可用性和事务处理性 提供大量用户并行访问相同数据的能力并具有高度的恢复性能 事务处理的典型应用有银行事务处理或Internet商务数据库的事务处理 数据仓库 ——安装优化数据仓库的预配置数据库 数据仓库类型适合于对主题进行复杂的查询 它支持大量数据进行快速的访问并且使用类似联机分析处理即OLAP等应用程序 数据仓库的典型应用比较广泛 包括客户定单研究 支持呼叫 销售预测 购物和采购模式以及其他战略性业务问题的历史数据库 自定义 ——创建自定义数据库 选择此项 需要安装的时间长 但可以选择需要的安装类型和组件 只有对Oracle安装非常有经验的用户或准备提供复杂的系统和产品配置信息 或需要安装Oracle 的特定组件时才需要选择自定义安装 只安装软件 ——选择此类型 只安装软件 不创建数据库 完成安装后不会启动配置助手 这可能会使以后再配置数据库时遇到一定的困难
图
在图 所示的数据库标识的对话框中 自己确定自己要创建的全局数据库名称 本例中 [全局数据库名]和SID中都输入 ORACL 单击[下一步]按钮 继续安装
选择数据库文件位置
图
为了优化数据库的性能 建议将数据库文件和软件安装在不同的磁盘上 见图
选择数据库字符集
Oracle数据库字符集的设置是安装的一个关键问题 字符集若使用不当 数据库中会出现形如 ???? 的字符 使得用户无法正确识别信息 同时也有可能造成重要信息的丢失
图
首先我们要说明 在安装数据库服务器时 应选择通用的数据库中文字符集 数据库中文字符集主要有三种 ZHS GBK US ASCII和WE ISO P 这里 我们选择字符集ZHS GBK 如图 所示
其次在后边将要讲解的客户端安装时 为了使客户端正常显示服务器的信息 在安装客户端的时候 必须使客户端的字符集和服务器端的字符集一致 因此 在后面的客户端安装步骤中 客户端的字符集也必须选择ZHS GBK
点击[安装] 开始安装 可查看安装进程 在安装过程中根据提示分别将第二和第三张安装盘放入光驱即可
创建数据库
图
在成功安装Oracle软件后 此时就要开始创建数据库 图 中所示的对话框显示了数据库创建的进程
改变默认口令
图
图
创建完SID为ORACL的数据库后 数据库配置助手将显示数据库的详细信息 包括默认的SYS和SYSTEM口令 见图 如果想修改 单击[口令管理]按钮改变默认口令后 单击[退出]按钮 完成数据库的配置 安装程序将进行其他一些工具服务的配置 如图 所示这些操作都是自动进行的 此时千万不要着急 要耐心等待
图
当出现如图 所示的安装结束画面时 证明我们的数据库服务器安装已经基本大功告成了
检查安装后的情况
按照前面的步骤完成数据库服务器的安装后 如何知道数据库运转如何?提供了哪些服务?所以我们此时就要进行必要的检查工作来确认一下
在[程序]菜单中检查
在数据库服务器安装结束后 检查一下[程序]菜单中的项目 选择[开始]|[所有程序] 共有两项
Oracle OraHome Oracle工具
Oracle Instaalation Products Oracle安装产品
在 服务 中检查
图
选择[开始]|[设置]|[控制面板]命令 双击[管理工具图标] 选择[服务]选项 打开如图 所示的画面 该图列出了服务器安装后 Oracle所有需要启动的服务 这时应该是
检查连接数据库
完成前两步后 说明数据库和监听器服务都已经正常工作了 下一步 我们 我们试一下在服务器端使用SQL*Plus检查连接数据库的情况
图
运行SQL*Plus后 如图 所示输入用户名和口令 连接不成功和成功的情况如图 所示
客户端安装
图
图
将Oracle i第一张系统安装盘放入光驱 自动引导安装系统并显示Oracle i安装系统封面窗口 单击[开始安装]按钮 显示安装首页 接着显示如图 所示的 欢迎 窗口 单击[下一步]按钮 进入 文件定位 窗口 在该窗口的目标文本框中输入主目录名称 一般按默认即可 如 OraHome 在路径文本框中输入主目录路径 如D:oracleora 单击[下一步]按钮 显示如图所示的带 正在装载产品列表 进度条的 文件定位窗口 见图
装载完成后 显示所示的 可用产品 窗口 单击第二项 即Oracle i客户端的单选按钮
图
单击[下一步]按钮 显示如图 所示的 安装类型窗口 选择 Administrator 单击[下一步]按钮 显示如图所示的带 执行先决条件 进度条的 安装类型 窗口
*窗口说明 Administrator ——表示管理员安装 安装内容包括管理控制台 企业管理工具 网络服务 使用程序以及基本的客户机软件 需要 MB的磁盘空间 运行时 ——表示为数据库应用程序拥护提供了连接Oracle i数据库并进行交互的网络连接服务和支持文件 需要 MB的磁盘空间 自定义 ——表示用户可以自行选择安装 某些附加组件只能通过 自定义 安装类型进行安装
图
装载完成后 显示如图 所示的 摘要 窗口
单击[安装]按钮 显示 安装 窗口
图
复制结束后 显示 配置工具 窗口 如图 所示 我们现在所要做的工作就我们建立服务器/客户端模式的关键操作了!!
图
配置过程中将出现如图 所示的 网络配置向导 窗口 询问是否使用目录服务
是 我要使用目录服务 包括两种服务类型 Oracle Internet目录和微软活动目录
不 我要自己创建网络服务名
lishixinzhi/Article/program/Oracle/201311/18361
Oracle 分区表的新增修改删除合并。普通表转分区表方法
一. 分区表理论知识
Oracle提供了分区技术以支持VLDB(Very Large DataBase)。分区表通过对分区列的判断,把分区列不同的记录,放到不同的分区中。分区完全对应用透明。
Oracle的分区表可以包括多个分区,每个分区都是一个独立的段(SEGMENT),可以存放到不同的表空间中。查询时可以通过查询表来访问各个分区中的数据,也可以通过在查询时直接指定分区的方法来进行查询。
When to Partition a Table什么时候需要分区表,官网的2个建议如下:
- Tables greater than 2GB should always be considered for partitioning.
- Tables containing historical data, in which new data is added into the newest partition. A typical example is a historical table where only the current month‘s data is updatable and the other 11 months are read only.
在oracle 10g中最多支持:1024k-1个分区:
Tables can be partitioned into up to 1024K-1 separate partitions
联机文档上有关分区表和索引的说明:
Partitioned Tables and Indexes
http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/partconc.htm#sthref2604
分区提供以下优点:
(1)由于将数据分散到各个分区中,减少了数据损坏的可能性;
(2)可以对单独的分区进行备份和恢复;
(3)可以将分区映射到不同的物理磁盘上,来分散IO;
(4)提高可管理性、可用性和性能。
Oracle 10g提供了以下几种分区类型:
(1)范围分区(range);
(2)哈希分区(hash);
(3)列表分区(list);
(4)范围-哈希复合分区(range-hash);
(5)范围-列表复合分区(range-list)。
Range分区:
Range分区是应用范围比较广的表分区方式,它是以列的值的范围来做为分区的划分条件,将记录存放到列值所在的range分区中。
如按照时间划分,2010年1月的数据放到a分区,2月的数据放到b分区,在创建的时候,需要指定基于的列,以及分区的范围值。
在按时间分区时,如果某些记录暂无法预测范围,可以创建maxvalue分区,所有不在指定范围内的记录都会被存储到maxvalue所在分区中。
如:
create table pdba (id number, time date) partition by range (time)
(
partition p1 values less than (to_date(‘2010-10-1‘, ‘yyyy-mm-dd‘)),
partition p2 values less than (to_date(‘2010-11-1‘, ‘yyyy-mm-dd‘)),
partition p3 values less than (to_date(‘2010-12-1‘, ‘yyyy-mm-dd‘)),
partition p4 values less than (maxvalue)
)
Hash分区:
对于那些无法有效划分范围的表,可以使用hash分区,这样对于提高性能还是会有一定的帮助。hash分区会将表中的数据平均分配到你指定的几个分区中,列所在分区是依据分区列的hash值自动分配,因此你并不能控制也不知道哪条记录会被放到哪个分区中,hash分区也可以支持多个依赖列。
如:
create table test
(
transaction_id number primary key,
item_id number(8) not null
)
partition by hash(transaction_id)
(
partition part_01 tablespace tablespace01,
partition part_02 tablespace tablespace02,
partition part_03 tablespace tablespace03
);
在这里,我们指定了每个分区的表空间。
List分区:
List分区也需要指定列的值,其分区值必须明确指定,该分区列只能有一个,不能像range或者hash分区那样同时指定多个列做为分区依赖列,但它的单个分区对应值可以是多个。
在分区时必须确定分区列可能存在的值,一旦插入的列值不在分区范围内,则插入/更新就会失败,因此通常建议使用list分区时,要创建一个default分区存储那些不在指定范围内的记录,类似range分区中的maxvalue分区。
在根据某字段,如城市代码分区时,可以指定default,把非分区规则的数据,全部放到这个default分区。
如:
create table custaddr
(
id varchar2(15 byte) not null,
areacode varchar2(4 byte)
)
partition by list (areacode)
( partition t_list025 values (‘025‘),
partition t_list372 values (‘372‘) ,
partition t_list510 values (‘510‘),
partition p_other values (default)
)
组合分区:
如果某表按照某列分区之后,仍然较大,或者是一些其它的需求,还可以通过分区内再建子分区的方式将分区再分区,即组合分区的方式。
组合分区呢在10g中有两种:range-hash,range-list。注意顺序,根分区只能是range分区,子分区可以是hash分区或list分区。
如:
create table test
(
transaction_id number primary key,
transaction_date date
)
partition by range(transaction_date) subpartition by hash(transaction_id)
subpartitions 3 store in (tablespace01,tablespace02,tablespace03)
(
partition part_01 values less than(to_date(’2009-01-01’,’yyyy-mm-dd’)),
partition part_02 values less than(to_date(’2010-01-01’,’yyyy-mm-dd’)),
partition part_03 values less than(maxvalue)
);
create table emp_sub_template (deptno number, empname varchar(32), grade number)
partition by range(deptno) subpartition by hash(empname)
subpartition template
(subpartition a tablespace ts1,
subpartition b tablespace ts2,
subpartition c tablespace ts3,
subpartition d tablespace ts4
)
(partition p1 values less than (1000),
partition p2 values less than (2000),
partition p3 values less than (maxvalue)
);
create table quarterly_regional_sales
(deptno number, item_no varchar2(20),
txn_date date, txn_amount number, state varchar2(2))
tablespace ts4
partition by range (txn_date)
subpartition by list (state)
(partition q1_1999 values less than (to_date(‘1-apr-1999‘,‘dd-mon-yyyy‘))
(subpartition q1_1999_northwest values (‘or‘, ‘wa‘),
subpartition q1_1999_southwest values (‘az‘, ‘ut‘, ‘nm‘),
subpartition q1_1999_northeast values (‘ny‘, ‘vm‘, ‘nj‘),
subpartition q1_1999_southeast values (‘fl‘, ‘ga‘),
subpartition q1_1999_northcentral values (‘sd‘, ‘wi‘),
subpartition q1_1999_southcentral values (‘ok‘, ‘tx‘)
),
partition q2_1999 values less than ( to_date(‘1-jul-1999‘,‘dd-mon-yyyy‘))
(