11G Oracle RAC添加新表空间时数据文件误放置到本地文件系统的修正

今天看了一篇文章说是误将新创建的表空间的数据文件放置在了本地系统而不是共享存储上。是Oracle的中文技术支持博客题目是:RAC中误将数据文件创建在本地盘时的

  今天看了一篇文章说是误将新创建的表空间的数据文件放置在了本地系统而不是共享存储上。

是Oracle的中文技术支持博客题目是:RAC中误将数据文件创建在本地盘时的修正

  于是我想11G 也兼容这些操作的方法,但是11G的新特性有一点就是可以直接支持ASM文件系统直接可以和本地文件系统进行文件的拷贝了,也就是有三种方法。

1. RMAN的 copy datafile 方式

2. dbms_file_transfer方式

3. ASMCMD中的直接cp方式了

分别演示三种方式:

RMAN

1)创建好本地开始的表空间

SQL> create tablespace andy datafile ‘/home/oracle/andy.dbf’ size 100M;

Tablespace created.

2)查看一下状态

SQL> select name,status from v$datafile;

NAME

——————————————————————————–

STATUS

——-

+DATA/racdb/datafile/system.256.823634487

SYSTEM

+DATA/racdb/datafile/sysaux.257.823634489

ONLINE

+DATA/racdb/datafile/undotbs1.258.823634489

ONLINE

NAME

——————————————————————————–

STATUS

——-

+DATA/racdb/datafile/users.259.823634491

ONLINE

+DATA/racdb/datafile/example.264.823634653

ONLINE

+DATA/racdb/datafile/undotbs2.265.823634943

ONLINE

NAME

——————————————————————————–

STATUS

——-

+DATA/racdb/datafile/undotbs3.266.823634945

ONLINE

+DATA/racdb/datafile/andylhz.272.823709117

ONLINE

+DATA/racdb/datafile/archivedata.274.824748169

ONLINE

NAME

——————————————————————————–

STATUS

——-

+DATA/racdb/datafile/archivedata01.275.824749235

ONLINE

/home/oracle/andy.dbf

ONLINE

3)在本地表空间上创建表 andy01

SQL> create table andy01 tablespace andy as select * from dba_objects;

Table created.

4)在第二个实例上去创建表也放在andy这个表空间上,注意红色字体部分,报告无法定位andy.dbf数据文件

[oracle@racdb2 ~]$ sqlplus  /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Wed Feb 12 17:00:30 2014

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

SQL> conn / as sysdba

Connected.

SQL> create table andy02 tablespace andy as select * from dba_objects;

create table andy02 tablespace andy as select * from dba_objects

                                                    *

ERROR at line 1:

ORA-01157: cannot identify/lock data file 11 – see DBWR trace file

ORA-01110: data file 11: ‘/home/oracle/andy.dbf’

5)然后进行修正操作,先将andy表空间进行offline

然后进行RMAN 拷贝 在将数据文件进行移动,online即可

wKioL1L7ObbzZwMlAAI7uS-UAhQ842.jpg

SQL> alter database rename file ‘/home/oracle/andy.dbf’ to ‘+data/racdb/datafile/andy.dbf’;

第二种方式

1)先创建两个目录,offline表空间andy

SQL> create directory andy01 as  ‘/home/oracle/’;

Directory created.

SQL> create directory andy02 as  ‘+data/racdb/datafile/’;

Directory created.

SQL>

2)进行文件传输

SQL> exec dbms_file_transfer.copy_file(‘andy01′,’andy.dbf’,’andy02′,’andy.dbf’);

PL/SQL procedure successfully completed.

SQL>

进入asmcmd查看一下

ASMCMD> pwd

+data/racdb/datafile

ASMCMD> ls

ANDYLHZ.272.823709117

ARCHIVEDATA.274.824748169

ARCHIVEDATA01.275.824749235

COPY_FILE.279.839351419

EXAMPLE.264.823634653

SYSAUX.257.823634489

SYSTEM.256.823634487

UNDOTBS1.258.823634489

UNDOTBS2.265.823634943

小文AI论文 小文AI论文

轻松解决论文写作难题,AI论文助您一键完成,仅需一杯咖啡时间,即可轻松问鼎学术高峰!

小文AI论文 69 查看详情 小文AI论文

UNDOTBS3.266.823634945

USERS.259.823634491

andy.dbf

ASMCMD>

已经成功拷贝过去了

移动数据文件,online数据文件

SQL> alter database rename file ‘/home/oracle/andy.dbf’ to ‘+data/racdb/datafile/andy.dbf’;

Database altered.

SQL>  alter tablespace andy online;

Tablespace altered.

第三种:通过grid用户进入到asmcmd环境下然后直接进入到RAC环境下的数据文件所在路径因为是数据文件创建在了oracle的家目录下,,grid没有权限读取,所以使用root用户将数据文件移动到grid家目录下同时变更权

[root@racdb1 grid]#mv andy.dbf /home/grid/

[root@racdb1 grid]#chown grid.asmadmin andy.dbf

[root@racdb1 grid]# su – grid

[grid@racdb1 ~]$ asmcmd

ASMCMD> cd data/racdb/datafile/

ASMCMD> ls

ANDYLHZ.272.823709117

ARCHIVEDATA.274.824748169

ARCHIVEDATA01.275.824749235

EXAMPLE.264.823634653

SYSAUX.257.823634489

SYSTEM.256.823634487

UNDOTBS1.258.823634489

UNDOTBS2.265.823634943

UNDOTBS3.266.823634945

USERS.259.823634491

ASMCMD> cp /home/grid/andy.dbf ./

copying /home/grid/andy.dbf -> +data/racdb/datafile/andy.dbf

ASMCMD> ls

ANDYLHZ.272.823709117

ARCHIVEDATA.274.824748169

ARCHIVEDATA01.275.824749235

EXAMPLE.264.823634653

SYSAUX.257.823634489

SYSTEM.256.823634487

UNDOTBS1.258.823634489

UNDOTBS2.265.823634943

UNDOTBS3.266.823634945

USERS.259.823634491

andy.dbf

ASMCMD>

移动数据文件到共享存储

SQL> alter database rename file ‘/home/oracle/andy.dbf’ to ‘+data/racdb/datafile/andy.dbf’;

Database altered.

SQL>

将数据文件online。

验证数据文件状态

SQL> select name,status from v$datafile;

NAME

——————————————————————————–

STATUS

——-

+DATA/racdb/datafile/system.256.823634487

SYSTEM

+DATA/racdb/datafile/sysaux.257.823634489

ONLINE

+DATA/racdb/datafile/undotbs1.258.823634489

ONLINE

NAME

——————————————————————————–

STATUS

——-

+DATA/racdb/datafile/users.259.823634491

ONLINE

+DATA/racdb/datafile/example.264.823634653

ONLINE

+DATA/racdb/datafile/undotbs2.265.823634943

ONLINE

NAME

——————————————————————————–

STATUS

——-

+DATA/racdb/datafile/undotbs3.266.823634945

ONLINE

+DATA/racdb/datafile/andylhz.272.823709117

ONLINE

+DATA/racdb/datafile/archivedata.274.824748169

ONLINE

NAME

——————————————————————————–

STATUS

——-

+DATA/racdb/datafile/archivedata01.275.824749235

ONLINE

+DATA/racdb/datafile/andy.dbf

ONLINE

11 rows selected.

本文出自 “影子骑士” 博客,请务必保留此出处

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/539462.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
微软CEO:AI将创造新工作机会,可能会出现10亿技术开发者
上一篇 2025年11月9日 14:30:23
《萤火突击》仓库满的处理方法及升级材料​介绍
下一篇 2025年11月9日 14:30:33

相关推荐

  • php实现哪些功能

    PHP是一种通用脚本语言,可用来实现广泛的功能,包括:动态Web开发:生成响应用户请求的动态 веб页面。内容管理系统(CMS):构建允许用户管理网站内容的CMS。电子商务:开发具有购物车、订单处理和支付网关集成的电子商务网站。服务器端编程:编写命令行脚本和工具。文件操作:创建、读取、写入和删除文件…

    2026年5月10日
    000
  • SQL查询:精确判断事件过期,结合日期与时间列

    本文旨在解决数据库中事件过期判断不精确的问题,特别是当事件的过期日期和时间分别存储在不同列时。我们将探讨两种主流的sql查询策略:一种是利用逻辑运算符`or`和`and`进行分情况判断,另一种是通过合并日期和时间列为单一时间戳进行直接比较。文章将详细阐述每种方法的实现方式、适用场景及相关注意事项,确…

    2026年5月10日
    200
  • HTML表单如何实现白名单功能?怎样只允许授权用户?

    要实现%ignore_a_1%的白名单功能并确保只有授权用户操作,核心答案是必须依赖后端服务器进行严格的身份认证、会话管理、授权检查和数据验证,前端仅能提供用户体验层面的初步提示而不能保障安全;具体而言,首先通过用户身份认证(如用户名/密码或oauth)确认用户身份,服务器创建会话并返回标识符,后续…

    2026年5月10日
    800
  • 如何用C#实现数据库的跨平台迁移?使用EF Core工具?

    使用EF Core实现跨平台数据库迁移,需定义实体与DbContext,通过动态配置不同数据库提供程序,利用EF Core CLI生成并应用迁移,结合Fluent API处理数据库差异,确保结构与数据兼容。 要实现数据库的跨平台迁移,C# 中最常用且高效的方式是使用 Entity Framework…

    2026年5月10日
    000
  • Python连接MySQL 5.1:克服旧版认证与字符集兼容性挑战

    本教程详细阐述了如何使用Python 3和mysql.connector库成功连接到老旧的MySQL 5.1数据库。文章重点介绍了解决旧版认证协议和字符集兼容性问题的关键配置,特别是use_pure=True和charset=’utf8’的重要性,并提供了可运行的代码示例。同…

    2026年5月10日
    000
  • 想提升IT技能?哪些含金量高的认证值得考?

    it职业发展:高含金量认证助您成功 想在IT领域提升竞争力?选择合适的认证至关重要。本文推荐几项国内外认可度高的IT认证,助您在职业道路上更进一步。 热门认证推荐: 1. 高级软件设计师(软考高级): 国内IT领域含金量最高的认证之一。涵盖软件工程、项目管理及计算机基础知识。证明您在软件设计和开发方…

    2026年5月10日
    000
  • 什么是资产代币化(Asset Tokenization)?它如何将现实世界资产带入区块链?

    资产代币化是通过区块链将房产、股票等实体资产权益转化为可分割的数字代币。首先选择目标资产并由合规机构确权估值,随后在链上发行对应代币并通过智能合约绑定权益比例,实现自动化分红与转让。为确保真实性,引入第三方审计和去中心化预言机同步链下数据,资金流由托管账户与链上地址联动记录,提升透明度。代币化降低投…

    2026年5月10日
    000
  • MySQL、PostgreSQL、SQL Server和Oracle中空字符串、数字0和NULL占用空间有何区别

    不同数据库系统中空字符串、数字0和NULL的存储空间差异 本文比较了MySQL InnoDB、PostgreSQL、SQL Server和Oracle数据库中,空字符串(”)、数字0和NULL值在磁盘上所占用的空间大小。 MySQL InnoDB存储引擎: 整型字段: NULL: 不占用…

    2026年5月10日
    000
  • html文档中含有java怎么运行_html含java运行方法【教程】

    现代浏览器不支持Java Applet,推荐通过JavaScript调用Java后端服务或使用WebAssembly运行Java代码。 如果您在HTML文档中嵌入了Java代码,但发现无法正常运行,这通常是因为现代浏览器不再支持Java小程序(Applet)或相关插件。以下是几种实现HTML中Jav…

    2026年5月10日
    000
  • php主要运用哪些东西

    PHP 是一种通用脚本语言,主要用于 Web 开发,包括创建动态网页、网站框架和内容管理系统。此外,它还支持 Web 服务(RESTful 和 SOAP)、数据库操作、命令行脚本、桌面应用程序和图像处理。 PHP 语言的主要应用 PHP(超文本预处理器)是一种广泛应用的通用脚本语言,主要用于 Web…

    2026年5月10日
    100
  • java怎么编译运行.html_java编译运行.html方法【教程】

    Java程序的编译运行与HTML无关,需使用JDK。1. 编写HelloWorld.java文件;2. 命令行执行javac HelloWorld.java生成.class文件;3. 执行java HelloWorld运行程序。注意:HTML是网页标记语言,不能直接运行Java代码,勿将二者混淆。确…

    2025年12月23日
    000
  • 怎么运行html的applet小程序_运行html applet小程序步骤【指南】

    现代浏览器已不再默认支持Java Applet,需通过安装JRE、启用插件、使用支持NPAPI的旧版浏览器(如Firefox 52.9 ESR)、调整Java安全级别至中,并将网站添加到例外站点列表方可运行。 如果您在尝试运行HTML中的Applet小程序时遇到问题,可能是因为现代浏览器已不再默认支…

    2025年12月23日
    000
  • 使用BeautifulSoup和JSON有效抓取动态加载的网页表格数据

    本教程旨在解决使用BeautifulSoup抓取网页表格时,因数据动态加载导致部分内容缺失的问题。通过分析网页背后的API请求,直接获取并解析JSON数据源,再结合BeautifulSoup提取的HTML结构信息,最终实现完整且准确的数据抓取。文章将提供详细的代码示例和实现步骤。 理解网页动态内容与…

    2025年12月23日
    400
  • 解决BeautifulSoup爬取网页表格中动态内容缺失问题

    本文旨在解决使用BeautifulSoup爬取网页表格时,因部分数据通过JavaScript动态加载导致内容缺失的问题。通过详细分析Oracle云定价页面的案例,教程将指导读者如何识别并获取隐藏在JSON API中的动态数据,并将其与BeautifulSoup解析的静态HTML内容有效整合,最终构建…

    2025年12月23日
    500
  • Java GUI在Web部署中的挑战与现代解决方案

    本文旨在澄清Java Web Start(JWS)在Web页面内运行GUI的常见误解,指出JWS用于本地应用启动而非嵌入式Web GUI。文章将探讨JWS的局限性及其被Oracle弃用的原因,介绍OpenWebStart作为其开源替代方案,并重点推荐Vaadin Flow作为使用纯Java构建真正W…

    2025年12月22日
    500
  • Java GUI Web部署策略与现代替代方案

    本文旨在澄清Java GUI应用在Web页面中直接运行的常见误区,特别是关于Java Web Start (JWS) 的作用与局限性。我们将探讨JWS的实际工作机制、其被Oracle废弃的原因,并介绍OpenWebStart作为现有JWS应用的替代方案。此外,文章将重点推荐Vaadin Flow等现…

    2025年12月22日
    700
  • 表单中的ERP怎么连接?如何对接企业资源计划系统?

    将表单数据连接到erp系统的核心是打通数据流,确保信息能从前端无缝流入企业核心系统,主要通过api接口集成、中间件/ipaas、文件导入导出和rpa四种方式实现;其中api集成因其实时性高、安全性好、可扩展性强,成为现代系统的首选方案,尤其适用于支持开放api的erp系统;当业务涉及多系统复杂集成时…

    2025年12月22日
    100
  • HTML如何实现文本加密?怎么隐藏敏感内容?

    纯前端技术无法真正加密或安全隐藏敏感内容,因为html、css和javascript均在客户端运行,源代码和数据可被用户通过开发者工具轻易查看;2. 所谓“隐藏”如display: none、hidden属性或javascript移除dom,仅是视觉上的屏蔽,数据仍存在于页面中;3. 真正的安全必须…

    2025年12月22日
    000
  • 表单中的智能合约怎么集成?如何自动执行表单条款?

    要实现表单数据与智能合约的精准匹配及条款的自动执行,核心在于通过后端服务进行数据类型转换、多层校验并严格遵循abi规范调用合约;智能合约通过内置条件逻辑或借助chainlink keepers等自动化服务实现触发执行;需应对gas成本、安全风险、异步体验和预言机依赖等挑战,采用layer 2、元交易…

    2025年12月22日
    300
  • 解决node-oracledb Thin模式下不支持0x939密码验证器错误

    本文旨在解决使用node-oracledb在thin模式下连接oracle数据库时遇到的“密码验证器类型0x939不受支持”错误。该问题通常源于数据库使用了较旧的密码哈希算法。教程将详细介绍针对不同oracle数据库版本的解决方案,包括启用thick模式、调整数据库参数以及重置用户密码等,以确保no…

    2025年12月21日
    300

发表回复

登录后才能评论
关注微信