针对其数据文件在外部硬盘中创建的数据库运行服务器

时间:2016-08-09 07:55:48

标签: oracle oracle11g oracle10g

我在特定数据库的外部硬盘中创建了datafiles。连接硬盘后,我可以毫无问题地运行服务器。现在当我删除硬盘并尝试运行服务器时,它会抛出错误说

  

找不到数据文件路径

这是因为datafiles的路径位于外部硬盘中。

现在,即使没有连接硬盘,我还能在同一个数据库上运行服务器吗?

1 个答案:

答案 0 :(得分:0)

假设真正的问题是如何将外部磁盘数据文件放到本地系统上,请看一下:

https://docs.oracle.com/cd/B28359_01/server.111/b28310/dfiles005.htm

大纲步骤:

在单个表空间中重命名数据文件的过程

要在单个表空间中重命名数据文件,请完成以下步骤:

  1. 将包含数据文件的表空间脱机。数据库必须打开。
  2. 例如:

    ALTER TABLESPACE users OFFLINE NORMAL;
    
    1. 使用操作系统重命名数据文件 - 在您的情况下,将外部磁盘中的文件复制到本地磁盘

    2. 使用带有RENAME DATAFILE子句的ALTER TABLESPACE语句来更改数据库中的文件名。

    3. 例如,以下语句将数据文件/u02/oracle/rbdb1/user1.dbf和/u02/oracle/rbdb1/user2.dbf重命名为/ u02 / oracle / rbdb1 / users01.dbf和/ u02 / oracle / rbdb1 / users02.dbf,分别为:

      ALTER TABLESPACE users
          RENAME DATAFILE '/u02/oracle/rbdb1/user1.dbf',
                          '/u02/oracle/rbdb1/user2.dbf'
                       TO '/u02/oracle/rbdb1/users01.dbf', 
                          '/u02/oracle/rbdb1/users02.dbf';
      

      始终提供完整的文件名(包括其路径)以正确识别旧数据文件和新数据文件。特别是,请指定与数据字典的DBA_DATA_FILES视图中显示的完全相同的旧数据文件名。

      1. 备份数据库。对数据库进行任何结构更改后,请始终执行立即完整备份。