RAC实例 表空间 维护
先配置一下监听,这样我们就可以从客户端进行连接了。 我这里写了三种连接。 第一种是正常方式,一般都采用这种方式,后面的rac1和rac2 是方便测试。因为如果用第一种方式的话,客户端连哪个实例是随机的,不好进行控制,除非手动的关闭某个实例,让Oracle 漂过去,那样有点麻烦。 我就又多添加了2个监听,分别对应实例1和实例2. 配置这2个监听的时候,要注意Service_name 这个参数,也是orcl. 即全局名。 不是对应的实例名。
Oracle 实例监听:
RAC =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.2)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
(FAILOVER_MODE =
(TYPE = session)
(METHOD = basic)
(RETRIES = 180)
(DELAY = 5)
)
)
)
Rac1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
Rac2 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.2)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
ASM 实例监听配置,手动的修改tnsnames.ora 文件。
如何配置从远程客户端 来访问ASM 实例,参考Blog:
远程客户端 访问 ASM 实例
http://blog.csdn.net/tianlesoftware/archive/2010/09/23/5901749.aspx
在这里做一下说明, RAC 的数据文件和控制文件都是放在共享设备上的,所以添加数据文件或对数据文件做修改时,只需要在一个节点上进行就可以了。
一. 用别名管理数据文件
1.1 查看已经存在的数据文件:
C:/Users/Administrator.DavidDai>sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on 星期四 9月
Copyright (c) 1982, 2010, Oracle. All rights reserved
SQL> conn sys/oracle@rac2 as sysdba;
已连接。
SQL> select file_name from dba_data_files;
FILE_NAME
------------------------------------------------------
+DATA/orcl/datafile/users.279.730181053
+DATA/orcl/datafile/sysaux.277.730181053
+DATA/orcl/datafile/undotbs1.278.730181053
+DATA/orcl/datafile/system.276.730181051
+DATA/orcl/datafile/undotbs2.284.730181347
ASM文件名字的格式是固定的:+group/dbname/file type/tag.file.incarnation
在创建db时系统自动创建的几个表空间(system,undotbs,sysaux,users)对应的都是真实的数据文件,即ASM 文件默认的命名格式。而且这个信息都写到了控制文件里。 如果我们使用别名的话,会方便很多。 对于这些创建数据库时自动创建的表空间,我们要他们使用别名,除了手工创建对应别名外,还需要重建控制文件,并且在重建时,datafile 里写别名的信息。 这样数据库也就使用别名了。
1.2 创建一个别名
注意: 别名的相关操作都要连接到ASM实例进行。 这也是我们前面配置ASM 监听的原因。
C:/Users/Administrator.DavidDai>sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on 星期四 9月 23 12:07:24 2010
Copyright (c) 1982, 2010, Oracle. All rights reserved.
SQL> conn sys/oracle@ASM AS SYSDBA
已连接。
SQL> select name from v$asm_diskgroup;
NAME
-------------------------------------------
DATA
FLASH_RECOVERY_AREA
1.2.1 使用全路径来创建
SQL> ALTER DISKGROUP DATA ADD ALIAS '+DATA/orcl/datafile/undotbs1.dbf'
FOR '+DATA/orcl/datafile/undotbs1.278.730181053';
1.2.2 使用数据文件的编号来创建
这里的编号就最后几个数字,在下面这个文件里,编号就是:284.730181347
+DATA/orcl/datafile/undotbs2.284.730181347
看一下创建SQL:
SQL> ALTER DISKGROUP DATA ADD ALIAS '+DATA/orcl/datafile/undotbs2.dbf'
2 FOR '+DATA.284.730181347'; -- 注意这里的格式
磁盘组已变更。
来查看别名的信息,这里要用asmcmd命令:
[oracle@rac1 admin]$ export ORACLE_SID=+ASM1
[oracle@rac1 admin]$ asmcmd
ASMCMD> pwd
+DATA/ORCL/DATAFILE
ASMCMD> ls -a
+DATA/ORCL/DATAFILE/dave.dbf => DAVE.288.730415847
none => SYSAUX.257.729962649
none => SYSAUX.261.729964001
none => SYSAUX.266.729966263
none => SYSAUX.270.729970051
none => SYSAUX.277.730181053
none => SYSTEM.256.729962647
none => SYSTEM.260.729963993
none => SYSTEM.265.729966263
none => SYSTEM.269.729970045
none => SYSTEM.276.730181051
none => UNDOTBS1.258.729962649
none => UNDOTBS1.262.729964005
none => UNDOTBS1.267.729966265
none => UNDOTBS1.271.729970057
+DATA/ORCL/DATAFILE/undotbs1.dbf => UNDOTBS1.278.730181053
+DATA/ORCL/DATAFILE/undotbs2.dbf => UNDOTBS2.284.730181347
none => USERS.259.729962651
none => USERS.263.729964005
none => USERS.268.729966267
none => USERS.272.729970063
none => USERS.279.730181053
dave.dbf
undotbs1.dbf
undotbs2.dbf
在这里,我们看到别名和数据文件的对应关系,我们创建的所有数据文件都有对应的ASM 文件。我们可以使用别名来与之对应,但是创建DB时创建的表空间没有对应的别名与之对应。 这个就是我之前说的,要修改这个默认设置就需要重建控制文件。
1.3 重命名别名
SQL> ALTER DISKGROUP DATA RENAME ALIAS '+DATA/orcl/datafile/undotbs1.dbf' TO '+DATA/orcl/datafile/undotbs3.dbf';
磁盘组已变更。
1.4 删除别名
SQL> ALTER DISKGROUP DATA DROP ALIAS '+DATA/orcl/datafile/undotbs3.dbf';
磁盘组已变更。
-- 这里要说明一下,很多资料说是用delete 关键字。 其实这里用的是drop 关键字
1.5 用别名来删除文件
ALTER DISKGROUP DATA DROP FILE '+DATA/ORCL/DATAFILE/undotbs3.dbf';
1.6 根据数据文件的文件号来删除文件
ALTER DISKGROUP DATA DROP FILE ' DATA.342.3';
1.7 用完整文件路劲删除文件
ALTER DISKGROUP DATA DROP FILE ' DATA /orcl/datafile/dave.342.3';
这部分内容可以参考Oracle 联机文档:
http://download.oracle.com/docs/cd/E11882_01/server.112/e16102/asmfiles.htm#CHDDHIGG
二. 数据文件管理
2.1. 创建表空间
和单实例的相同,只不过文件路劲写成ASM的路劲:
SQL> CREATE TABLESPACE DaveHomeTown DATAFILE '+DATA/orcl/datafile/AnhuiAnqing.dbf' SIZE 10M;
表空间已创建。
SQL> select file_name from dba_data_files;
FILE_NAME
--------------------------------------------------------------------------------
+DATA/orcl/datafile/users.279.730181053
+DATA/orcl/datafile/sysaux.277.730181053
+DATA/orcl/datafile/undotbs1.278.730181053
+DATA/orcl/datafile/system.276.730181051
+DATA/orcl/datafile/undotbs2.284.730181347
+DATA/orcl/datafile/dave.dbf
+DATA/orcl/datafile/anhuianqing.dbf
已选择7行。
我是在节点1上创建的。 前面已经说过,因为它是共享的,所以在节点2上也能查询到。
如果遇到如下错误:
ORA-00569: Failed to acquire global enqueue.
Cause: A prior error occurred on one of the instances in the cluster. Typically errors are caused by shared pool resource contention.
Action: Check for and resolve prior errors on all instances in the cluster. If there is shared pool resource contention, increase the SHARED_POOL_SIZE, DML_ LOCKS, PROCESSES, TRANSACTIONS, CLUSTER_DATABASE_INSTANCES and PARALLEL_MAX_SERVERS initialization parameters.
就检查一下ASM的相关参数。
Oracle ASM 详解
http://blog.csdn.net/tianlesoftware/archive/2010/02/22/5314541.aspx
2.2 修改数据文件大小
默认情况下,user 表空间是5M, 我们来把它改成10M。
SQL> ALTER DATABASE DATAFILE '+DATA/orcl/datafile/users.279.730181053' RESIZE 10M;
数据库已更改。
现在设置表空间的自动扩展属性:
SQL> ALTER DATABASE DATAFILE '+DATA/orcl/datafile/users.279.730181053'
2 AUTOEXTEND ON
3 NEXT 10M
4 MAXSIZE UNLIMITED;
数据库已更改。
2.3 表空间添加数据文件
SQL> ALTER TABLESPACE DAVE ADD DATAFILE '+DATA/orcl/datafile/dave2.dbf' SIZE 10M AUTOEXTEND ON NEXT 10M MAXSIZE 20M;
表空间已更改。
2.4 删除数据文件
SQL> ALTER TABLESPACE DAVE DROP DATAFILE '+DATA/orcl/datafile/dave2.dbf';
表空间已更改。
2.5. 删除表空间
SQL> drop tablespace dave including contents and datafiles;
表空间已删除。
转:http://blog.csdn.net/tianlesoftware/article/details/5901953
RAC实例 表空间 维护的更多相关文章
- oracle12c之 表空间维护总结
1.1.创建永久表空间 In the CDB:SQL> CONNECT system@cdb1SQL> CREATE TABLESPACE cdb_users DATAFILE'/home ...
- orale数据库.实例.表空间.用户.表
近期因为工作原因接触到Oracle数据库.了解到Oracle和mysql的结构上还是有很大的区别的. Oracle数据库---实例---表空间---用户---表 我们将从这5个方面来了解Oracle ...
- SQL总结之创建实例表空间监听
[创建数据库实例]cmd------>dbca[创建表空间-sql创建]create tablespace NSTC_WS logging datafile 'D:\app\dell\orada ...
- Oracle表空间维护总结
1. 概念:表空间:最大的逻辑存储文件,与物理上的一个或多个数据文件对应,每个数据库至少拥有一个表空间,表空间的大小等于构成表空间的所有数据文件的大小总和,用于存储用户在数据库中存储的所有内容. 2. ...
- innodb系统表空间维护
环境说明: 有一个在运行中的mysql环境,由于之前的配置文件设置的过于简单(没有配置innodb_data_file_path变更):造成现在系统表空间已经满了 如果innodb_data_file ...
- oracle之 SYSAUX表空间维护
1.查询表空间使用率SQL> set linesize 400SQL> set pagesize 400SQL> SELECT D.TABLESPACE_NAME 表空间名称,SPA ...
- Oracle Rac创建表空间及用户
1. 创建表空间: BEGIN DECLARE cnt integer := 0; BEGIN SELECT 1 INTO cnt FROM dual WHERE exists(SELECT * FR ...
- oracle表空间维护常用命令
---查看表空间的名字及文件所在位置: select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_spac ...
- Oracle基础(三) 表空间
数据库的存储结构 数据库主要用于存储和检索相关的信息,Oracle数据库包含逻辑结构和物理结构. 物理结构是指现实存储单元,由一组文件组成如数据文件.日志文件.控制文件. 数据文件:用于存储数据的文件 ...
随机推荐
- java对象群体的组织:Enumeration及Iterator类
在一般情况下,遍历集合类会使用一下方式: for(int i=0;i<v.size();i++)< p=""> Customer c=(Custormer)v.g ...
- LINUX输入输出与文件——续
1 目录操作 改变目录或文件的访问权限 #include <sys/stat.h> int chmod(const char *path, mode_t mode); //mode形如07 ...
- 妙味课堂——HTML+CSS(第三课)
常见标签我已经在上一篇文章中提及,我们做前端设计时,主要也是用这些标签(最常用的). 然而有一个问题,就是有的标签都有自己的默认样式.试通过如下代码来说明: <!DOCTYPE html> ...
- nodejs的require模块及路径
在nodejs中,模块大概可以分为核心模块和文件模块. 核心模块是被编译成二进制代码,引用的时候只需require表示符即可,如(require('net')). 文件模块,则是指js文件.json文 ...
- 李洪强iOS开发之- 实现简单的弹窗
李洪强iOS开发之- 实现简单的弹窗 实现的效果: 112222222222223333333333333333
- Android 核心分析之十三Android GWES之Android窗口管理
Android GWES之Android窗口管理1基本构架原理 Android的窗口管理是C/S模式的.Android中的Window是表示Top Level等顶级窗口的概念.DecorView是Wi ...
- JLink 软件复位、Halt及运行小工具
调试硬件时常常需要复位目标芯片,每次断电上电太麻烦,又不喜欢总打开segger的命令行,于是就搞了这个小工具: QT绿色软件,解压即可运行,打开JLinkRST.exe,点击Connect即可通过 ...
- android 检测工具: drozer
1. 下载 https://www.mwrinfosecurity.com/products/drozer/community-edition/ 可以下载windows的也可以下载linux的 2. ...
- linux下python启动第三方程序,并控制关闭
import subprocess import os import signal p = subprocess.Popen("recordmydesktop -o /home/test/t ...
- linux 屏幕录像(recordmydesktop)
需求:命令行工具进行屏幕录像ffcast ffmpeg 简单点的是recordmydesktop. 1. 安装: apt-get install gtk-recordmydesktop recordm ...