Oracle rac环境的数据库导入操作记录
搞某一大项目的性能测试,将Oracle数据库dmp文件(211G)导入性能测试环境。
因为Oracle部署方式为rac,数据存储到共享磁盘。但由于对rac了解不足,这个过程中犯了两个错误:
① 表空间、临时表空间没有创建到共享磁盘,而是创建到了数据库服务本地磁盘;
② 发现应该创建到共享磁盘后,直接物理删除了本地磁盘的表空间文件(会导致数据库奔溃),应该通过sql命令删除。
以下应是规范的操作步骤:
1. 创建表空间前,先查看表空间所在目录
--查看表空间目录
select name from v$datafile;

--查看所有临时表空间名字及文件名
select f.file#,t.ts#,f.name "File",t.name "Tablespace" from v$tempfile f,V$tablespace t where f.ts# = t.ts#;

2. 创建用户表空间、用户及密码
表空间、临时表空间目录应与上面查询出的目录一致。
--创建用户
create tablespace cwy_XXX0608 datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608.dbf' size 20480M autoextend on next 1024M maxsize unlimited extent management local;
create temporary tablespace cwy_XXX0608temp tempfile '+DATA/ORCL/TEMPFILE/cwy_XXX0608temp.dbf' size 1024M autoextend on next 1024M maxsize unlimited extent management local;
CREATE USER cwy_XXX0608 PROFILE DEFAULT IDENTIFIED BY XXX_0608 DEFAULT TABLESPACE cwy_XXX0608 TEMPORARY TABLESPACE cwy_XXX0608temp ACCOUNT UNLOCK;
GRANT UNLIMITED TABLESPACE TO cwy_XXX0608 WITH ADMIN OPTION;
GRANT "CONNECT" TO cwy_XXX0608 WITH ADMIN OPTION;
grant connect,resource to cwy_XXX0608;
grant create session, dba to cwy_XXX0608; --用户名:cwy_XXX0608
--密码:XXX_0608
3. 如果表空间不足,需创建足够的表空间文件
--扩充表空间
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_01.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_02.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_03.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_04.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_05.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_06.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_07.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_08.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_09.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
alter tablespace cwy_XXX0608 add datafile '+DATA/ORCL/DATAFILE/cwy_XXX0608_10.dbf' SIZE 20480M AUTOEXTEND ON NEXT 1024M MAXSIZE UNLIMITED;
4. 如果上述创建的表空间存在问题,执行删除操作
注:如需备份,请先执行备份。
--删除表空间
drop tablespace cwy_XXX0608 including contents and datafiles cascade constraint;
--删除临时表空间
drop tablespace cwy_XXX0608temp including contents and datafiles;
5.执行导入操作
需要将导入文件放入DATA_PUMP_DIR目录下 (select * from dba_directories t;)
--导入数据库
./impdp cwy_XXX0608/XXX_0608 directory=DATA_PUMP_DIR dumpfile=cwy_XXX832_1124_0109.dmp REMAP_SCHEMA=cwy_XXX832_1124:cwy_XXX0608 transform=segment_attributes:n logfile=imp_cwy_XXX832_1124_0109.log
6. 其他表空间操作
--查看当前用户默认临时表空间
select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE'; --查看所有用户的默认表空间和默认临时表空间
select USERNAME,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE from dba_users; --oracle数据库查看表空间使用率
SELECT a.tablespace_name,
total / (1024 * 1024 * 1024) "大小(G)",
free / (1024 * 1024 * 1024) "剩余大小(G)",
(total - free) / (1024 * 1024 * 1024) "使用大小(G)",
round((total - free) / total, 4) * 100 "使用率 %"
FROM (SELECT tablespace_name, SUM(bytes) free
FROM dba_free_space
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM(bytes) total
FROM dba_data_files
GROUP BY tablespace_name) b
WHERE a.tablespace_name = b.tablespace_name; --查看表空间物理文件的名称及大小
SELECT tablespace_name,
file_id,
file_name,
round(bytes / (1024 * 1024), 0) total_space
FROM dba_data_files
ORDER BY tablespace_name;
Oracle RAC介绍:
Oracle RAC(Real Application Cluster)是一种基于共享存储和共享数据库的集群解决方案,可以将多个 Oracle 数据库实例连接成一个逻辑上的单一数据库,提供高可用性、灵活性和可伸缩性。通过 RAC 集群,应用程序可以同时连接到所有节点上的数据库实例,以实现负载均衡和故障转移等特性。
RAC 集群的主要组成部分包括以下内容:
1. 共享存储:在 RAC 集群中,所有节点都可以访问共享的物理存储设备,例如 SAN 或 NAS。共享存储通常由三个或更多的存储设备组成,每个设备都被称为一个 ASM(Automatic Storage Management)磁盘组。
2. 共享数据库:RAC 应用程序可以同时连接到所有节点上的数据库实例,这些实例通过 Cache Fusion 技术实现数据共享和同步。Cache Fusion 是一种高效的内存共享技术,它可以确保在所有节点上的数据库缓存中都有相同的数据块。
3. Clusterware:Clusterware 是一种集群管理软件,它负责协调和管理所有节点上的 Oracle 数据库实例和应用程序。它可以监控节点和资源的状态,并在发生故障时执行自动故障切换和恢复操作。
4. VIP:虚拟 IP(Virtual IP)是 RAC 集群中的一个重要组成部分,它为应用程序提供了一个单一的网络入口点,并负责将请求路由到活动节点上的数据库实例。VIP 可以确保在发生故障时客户端不会看到任何中断或延迟,并且可以快速地切换到备用节点。
RAC 集群可以提供高可用性、灵活性和可伸缩性,同时也带来了一些管理和配置上的挑战。在使用 Oracle RAC 时,需要特别注意共享存储和网络连接的稳定性,并采取适当的管理和监控措施来维护集群的正常运行。
Oracle rac环境的数据库导入操作记录的更多相关文章
- 【转】Oracle RAC 环境下的连接管理
文章转自:http://www.oracle.com/technetwork/cn/articles/database-performance/oracle-rac-connection-mgmt-1 ...
- Oracle RAC 环境下的连接管理(转) --- 防止原文连接失效
崔华老师的文章!!! 这篇文章详细介绍了Oracle RAC环境下的连接管理,分别介绍了什么是 Connect Time Load Balancing.Runtime Connection Load ...
- Oracle RAC 环境下的 v$log v$logfile
通常情况下,在Oracle RAC 环境中,v$视图可查询到你所连接实例的相关信息,而gv$视图则包含所有实例的信息.然而在RAC环境中,当我们查询v$log视图时说按照常理的话,v$log视图应当看 ...
- Oracle RAC环境的日志体系
转摘:http://blog.itpub.net/22664653/viewspace-722463/ 在Oracle RAC环境中比单个系统的日志体系要复杂:见下图: 简单介绍一下有关Oracle集 ...
- bay——Oracle RAC环境下ASM磁盘组扩容.docx
https://www.cnblogs.com/polestar/p/10115263.html Oracle RAC环境下ASM磁盘组扩容 生产环境注意调整以下参数: +++++++++++++++ ...
- Oracle RAC环境下定位并杀掉最终阻塞的会话-续
之前在<Oracle RAC环境下定位并杀掉最终阻塞的会话>中,最终使用一个SQL查询出RAC实例之间的所有阻塞关系.但是实际在某些极端的生产环境,是不允许执行复杂的SQL语句,即使允许执 ...
- Oracle RAC环境下定位并杀掉最终阻塞的会话
实验环境:Oracle RAC 11.2.0.4 (2节点) 1.模拟故障:会话被级联阻塞 2.常规方法:梳理找出最终阻塞会话 3.改进方法:立即找出最终阻塞会话 之前其实也写过一篇相关文章: 如何定 ...
- Oracle RAC运维所遇问题记录一
Oracle11gR2,版本11.2.0.4集群测试环境运行正常 主机名:rac1,rac2 hosts文件: # Public172.17.188.12 rac1172.17.188.13 rac2 ...
- Oracle RAC环境下如何更新patch(Rolling Patch)
Oracle RAC数据库环境与单实例数据库环境有很多共性,也有很多异性.对于数据库补丁的更新同样如此,都可以通过opatch来完成.但RAC环境的补丁更新有几种不同的更新方式,甚至于可以在零停机的情 ...
- MongoDB副本集(一主一备+仲裁)环境部署-运维操作记录
MongoDB复制集是一个带有故障转移的主从集群.是从现有的主从模式演变而来,增加了自动故障转移和节点成员自动恢复.MongoDB复制集模式中没有固定的主结点,在启动后,多个服务节点间将自动选举产生一 ...
随机推荐
- 股票数据Scrapy爬虫实例(亲测有效)
步骤: 步骤1:建立工程和Spider模板 scrapy startproject BaiduStocks cd BaiduStocks scrapy genspider stocks baidu.c ...
- 快收藏!最全GO语言实现设计模式
https://segmentfault.com/a/1190000042859564
- .NET中使用RabbitMQ总结
目前业界使用较多的消息队列组件有RabbitMQ.ActiveMQ.MSMQ.kafka.zeroMQ等 之间的对比可以看这里 之前搭过ActiveMQ环境带源码 点击这里 后来发现RabbitMQ性 ...
- LeeCode 91双周赛复盘
T1: 不同的平均值数目 思路:排序 + 双指针 + 哈希存储 public int distinctAverages(int[] nums) { Arrays.sort(nums); Set< ...
- day120:MoFang:修复宠物喂食饱食度不增加的BUG&修复宠物死亡导致数据错乱的BUG
目录 BUG1:修复宠物喂食饱食度未增加的BUG BUG2:修复当用户拥有2个宠物时,如果第1个宠物挂了,会出现第二个宠物变成第1个宠物的情况,会导致数据发生混乱出现bug BUG1:修复宠物喂食饱食 ...
- 帝国cms将没有搜索到结果的关键字存入到数据库的方法
在帝国cms网站前台搜索一个关键字,如果在网站中查询到了,这个关键字会被记录入搜索关键字表中,但是如果在网站中没有搜索到,就不会记录入搜索关键字表中,那怎么把没有搜索结果的关键字才能记录到数据库中,方 ...
- [操作系统] - 进程状态&进程描述
2.1 进程(Process) 2.1.1 定义 chatGPT版:一个具有独立功能的程序关于某个数据集合的一次运行活动 人话版:程序在并发环境中的执行过程& 进程是程序的一次执行 2.1.2 ...
- DFS手写排列
DFS手写排列 虽然python中有自带的排列函数,但是在某些特殊情况需要手写排列.掌握了DFS手写排列对DFS的理解有一定的帮助. 1.手写排列(非字典序输出) 这种代码比较简单易懂,但是不是按照字 ...
- RTSP Server(LIVE555)源码分析(一)-重要关系类
live项目包括四个基本的库,程序入口类(在mediaServer中),各种测试代码(测试代码在testProgs里面). 四个基本的库分别是: UsageEnvironment&TaskSc ...
- 【深入浅出 Yarn 架构与实现】6-3 NodeManager 分布式缓存
不要跳过这部分知识,对了解 NodeManager 本地目录结构,和熟悉 Container 启动流程有帮助. 一.分布式缓存介绍 主要作用就是将用户应用程序执行时,所需的外部文件资源下载缓存到各个节 ...