精华内容
下载资源
问答
  • SQL codeSQL> alter database datafile 'E:\PLSQL DEV\BBS.ORA' offline drop;...创建一个新的表空间create tablespace rainbowdatafile 'd:\oracle\oradata\oa_test5\rainbow01.dbf' size 1...

    SQL codeSQL> alter database datafile 'E:\PLSQL DEV\BBS.ORA' offline drop;

    ------解决方案--------------------

    1.创建一个新的表空间

    create tablespace rainbow

    datafile 'd:\oracle\oradata\oa_test5\rainbow01.dbf' size 10m;

    2.在其中建表

    create table test

    (emp int)

    tablespace rainbow;

    3.插入数据

    insert into test

    (emp) values(1000);

    commit;

    4.备份控制文件

    alter database backup controlfile to 'd:\control.bak';

    5.关闭数据库

    shutdown immeidate;

    6.进行全备份

    备份所有的数据文件

    7.打开数据库

    startup

    8.删除表空间rainbow

    drop tablespace rainbow including contents; 16:46:03

    9.为了验证我们再更新另外一个表空间里的test2表

    insert into test2 (emp) values(888);

    commit;

    10.关闭数据库,并用6进行的全备份restore所有的数据文件(不完全恢复一定要全部的数据文件)

    11.打开至mount;

    startup mount;

    12.执行不完全恢复

    recover database until time'2007-03-23:16:46:00' using backup controlfile;

    (为什么要使用using backup controlfile 因为删除表空间后控制文件被修改了)

    SQL> recover database until time'2007-03-23:16:46:00' using backup controlfile;

    ORA-00279: 更改 471722 (在 03/23/2007 16:39:44 生成) 对于线程 1 是必需的

    ORA-00289: 建议: D:\ORACLE\ORADATA\OA_TEST5\ARCHIVE\ARC00001.001

    ORA-00280: 更改 471722 对于线程 1 是按序列 # 1 进行的

    指定日志: {=suggested | filename | AUTO | CANCEL}

    D:\ORACLE\ORADATA\OA_TEST5\redo03.log

    已应用的日志

    完成介质恢复

    13.打开数据库

    alter database open resetlogs;

    数据库已更改

    14.查询原来的数据

    select * from test;

    结果报错

    ERROR at line 1:

    ORA-00376: file 11 cannot be read at this time

    ORA-01111: name for data file 11 is unknown - rename to correct file

    ORA-01110: data file 11: '/opt/oracle/product/9.2.0/dbs/MISSING00011'

    问题的原因:现在的控制文件中没有tablespace rainbow (前面已经将其删除)

    虽然我们用备份的控制文件对数据库进行了修复但是数据库打开时当前的控制

    文件仍然是最新的控制文件。

    出现'/opt/oracle/product/9.2.0/dbs/MISSING00011' ,是因为数据库启动时

    发现控制文件和system表空间中的dv信息不一致造成的

    解决方法:重建控制文件

    用备份出来的控制文件'd:\control.bak'重命名即可,或使用由alter

    database backup control file to trace 备份的进行重建。

    15.重新开启数据库并查询数据

    SQL> select * from test;

    EMP

    ----------

    1000

    SQL> select * from test2;

    未选定行

    说明数据库已经按我们的要求进行不完全恢复了。

    展开全文
  • SQL> startup mountORA-01081: ... shutdown immediateORA-01109: 数据库未打开已经卸载数据库。ORACLE 例程已经关闭。SQL> startup mountORACLE 例程已经启动。Total System Global Area 612368384 bytesFi...

    SQL> startup mount

    ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它

    SQL> shutdown immediate

    ORA-01109: 数据库未打开

    已经卸载数据库。

    ORACLE 例程已经关闭。

    SQL> startup mount

    ORACLE 例程已经启动。

    Total System Global Area 612368384 bytes

    Fixed Size 1250428 bytes

    Variable Size 167775108 bytes

    Database Buffers 436207616 bytes

    Redo Buffers 7135232 bytes

    数据库装载完毕。

    SQL> alter database datafile 'F:\ORADB.DEF'offline drop;  (忘了文件名,可以先执行下面的,会有文件名提示的)

    数据库已更改。

    SQL> alter database open;

    数据库已更改。

    SQL> drop tablespace oradb including contents;

    表空间已删除。

    展开全文
  • 登陆到系统中,切换到oracle用户查看数据库状态时,报错现象如下:再查看磁盘空间使用情况df –h查看,根目录磁盘空间已经满了(sda3磁盘)1、首先想到的是删除一些不用的文件。但是这是一台只部署了oracle数据库而...

    近日,在初始化系统的时候,有报错,最后查的是因为部署在一台linux系统上的oracle数据库有异常。登陆到系统中,切换到oracle用户查看数据库状态时,报错现象如下:

    8ff0a79ed4aba95c0586011eeb2d30a3.png

    再查看磁盘空间使用情况df –h查看,根目录磁盘空间已经满了(sda3磁盘)

    636c6814be791b4fa6b598dc60a396ea.png

    1、首先想到的是删除一些不用的文件。但是这是一台只部署了oracle数据库而没有部署其他基础件的linux系统,删除文件不会增加太多空间。如果部署了其他基础件,可以删除一些日志和core文件,可以增加很大的磁盘空间。

    2、根据经验,oracle数据库用久了,它的UNDO表空间和TEMP表空间对应的物理文件会占用很大的磁盘空间。进入对应的oradata目录使用ll –lh查看,果然,分别占用了14G和17G的磁盘空间。

    5037c3b250e1e51a32d804415184c28a.png

    3、基于以上分析,需要对这2个文件动动手术,可以参考网上资料《UNDOTBS01.DBF太大的解决方法》和《oracle temp01.dbf太大的解决方式》

    4、以上的”手术”需要在数据库启动的状态下进行,但是目前数据库因为磁盘空间不足,启动都启动不了,便想到删除一些文件先让数据库可以启动起来。

    前面已经分析了,由于只部署了数据库,删除一些文件之后只多了2M的空间,数据库无法启动。便进行了系统的重启,一般重启系统会释放一些空间,可以让数据库先起起来。但是这次重启系统后,数据库还是因为磁盘空间满无法启动。

    5、这种情况下,观察到业务的一些数据库文件也占用了很大的空间,可以先挪一部分物理文件到其他非根目录上去。这个环境的数据库文件一部分再/uf02/oradata/test142,这个目录是用的根目录磁盘空间,可能是数据库最开始安装时指定的数据库文件路径;一部分在/uf20/oradata/test142,这个是新挂载的磁盘sdb1,还有18G空间可用。

    以上挪表空间的物理文件的过程可以在数据库没有启动的时候进行。

    问题已经分析清楚,可以开始持刀操作了

    一、加载新磁盘并挂载

    如果没有新的磁盘,可以申请挂载新的磁盘,操作如下。如有可忽略,实际操作过程中目录名称请自己定义。

    ba6038e9d916cc22b2de92c9bc59acab.png

    二、挪数据文件到新的磁盘目录

    d77fa4c35093da696f0d77b25ef1bc65.png

    启动数据库,直接startup会报错刚刚移动的数据文件不存在类似。

    可以在mount数据库的状态下,指定数据文件到新的位置。

    9f5f482c83bebf1856a33b60ca1ea792.png

    ▪ 已连接到空闲例程↑

    82fa9705627e9174f01fb2ab9f5d7873.png

    ▪ORACLE 例程已经启动↑

    81bbf4491a024ef23bd35d12e89efae2.png

    ▪数据库装载完毕↑

    1028126a0aaea4b61a8ecdbdf477270d.png

    ▪数据库已更改↑

    SQL> alter database open;

    ▪数据库已更改↑

    SQL> alter system register;

    ▪系统已更改↑

    三、重做UNDO表空间

    以上步骤二的操作可以解决部分问题,挪一些比较大的物理文件到新的磁盘,则根目录磁盘空间可能就已经多出了好几个G,则够用了。

    *这里推荐一种方法可以让空间更多点

    以SYS用户登录Oracle 自带的SQL*PLUS的方法:

    sqplus “/as sysdba”

    1、创建一个新的小空间的UNDO TABLESPACE

    b8fbb262c65dc48c872aadc9b0673b23.png

    2、设置新的表空间为系统UNDO_TABLESPACE

    6496a0ffc26b059df5dbe5ceeb21843a.png

    3、在配置文件中修改undo_tablespace的设置

    9a66d9c16fb2c9ccf31002e4968a0c8c.png

    在本系统的位置及文件名称

    a8794edfd21ed5dd5f1ad4eafb0077a3.png

    即cd $ORACLE_HOME/dbs目录下

    将其中的undo_tablespace=UNDOTBS1 改为 UNDOTBS2

    4、重启数据库

    方法一:采用命令SHUTDOWN IMMEDIATE 关闭数据库,然后再采用命令STARTUP 重新开启数据库;

    方法二:重启计算机

    5、DROP 旧的表空间

    7c4853ca8f79d4e4096b555fd20834c6.png

    查询所有表空间情况: SELECT NAME FROM V$DATAFILE;

    空间得到恢复利用

    文件位置请根据自己系统情况进行操作

    412aeff3589a353c521aad42aa2e03a3.png

    以上操作完成,查看文件大小以及空间使用情况,感觉心情不错!

    版权所有 侵权必究

    如需转载请联系

    0571-28829811

    展开全文
  • 报错:ORA-01219: 数据库未打开:仅允许在固定/视图中查询出现这个问题情况是:我自己在本地创建一个数据库,在建表空间的时候,建好一个表空间文件,后觉得这个表空间文件名不好,想删掉,然后我就直接到当前...

    报错:ORA-01219: 数据库未打开:

    仅允许在固定表/视图中查询

    出现这个问题情况是:我自己在本地创建一个数据库,在建表空间的时候,建好一个表空间文件,后觉得这个表空间文件名不好,想删掉,然后我就直接到当前数据库的文件夹下面直接操作,并没写SQL语句查询,删除完后当我再用pssqlde工具或删除数据库工具打开它都提示ora-01219

    :数据库未打开,仅允许在固定表/视图中查询,在网上查了很多,后面才解决掉,现把它记录下来以后遇到相似问题,以便能快速解决,也可供让遇到相同问题的朋友们进

    行一个参考。

    主要是删除v$datafile 中的对应文件

    alter database datafile

    'E:\oracle\product\10.2.0\oradata\lushoudb\lushu 001.dbf' offline

    drop;

    然后把表空间drop:

    drop tablespace lushu 001.

    首先在在命令行下输入

    sqlplus /nolog 进入SQL*PLUS

    大概步骤如下:

    C:\documents and

    settings\administrator>sqlplus/nolog

    SQL>conn system/manager as sysdba

    已连接

    SQL>select name from v$datafile

    2 ;

    name

    -------------------------------------

    E:\oracle\product\10.2.0\oradata\lushoudb\system01.dbf

    E:\oracle\product\10.2.0\oradata\lushoudb\user01.dbf

    E:\oracle\product\10.2.0\oradata\lushoudb\lushu 001.dbf

    SQL>alter database datafile

    'E:\oracle\product\10.2.0\oradata\lushoudb\lushu 001.dbf'

    offline

    2 ;

    数据库已更改

    SQL>alter database datafile

    'E:\oracle\product\10.2.0\oradata\lushoudb\lushu 001.dbf' offline

    drop

    2 ;

    数据库已更改

    SQL>alter database open

    2 ;

    数据库已更改

    SQL>select name from v$tablespace

    2 ;

    name

    -------------------------------------

    system

    user

    已选择2行

    问题解决!!!

    展开全文
  • 执行drop tablespace先删了.dbf文件,发现数据库未打开等一系列错误 如果要删除表空间,一定不要直接删.dbf文件,一定要先执行 drop tablespace 表空间名称 including contents; drop user 用户 cascade; 再去物理...
  • 来自:http://blog.sina.com.cn/s/blog_62192aed01018aep.html1 、 登录服务器2 、 查看磁盘空间是否够大df -h-h更具目前磁盘空间和使用情况 以更易读的方式显示[root@rac1 ~]# df -hFilesystem Size Used Avail Use...
  • 1. 创建表空间:BEGINDECLAREcnt integer := 0;BEGINSELECT 1 INTO cnt FROM dual WHERE exists(SELECT * FROM user_tablespaces WHERE tablespace_name = UPPER(TRIM('TEST')));IF cnt != 0 THENDECLAREs VARCHAR2...
  • 手动创建数据库通常包含如下操作步骤:(参照E:\资料\oracle资料及培训资料\手动创建oracle数据库\详解Oracle手动创建数据库几大步骤.txt)1、确定新建...7、创建附加的表空间;8、运行脚本创建数据字典视图;mkdir ...
  • MySQL(一) 数据表数据库的基本操作

    千次阅读 2021-01-18 23:53:55
    总结:学习了对数据库的三个操作,1、查看所有数据库 2、创建数据库 3、删除数据库 三、数据的基本操作 数据数据库还有Mysql三者的关系 mysql中保存了很多数据库、一个数据库中可以保存很多。 对数据的...
  • 相信很多人在创建表空间的时候遇到过这样问题.问题原因:这是因为oracle数据库是在虚拟机或者是服务器上安装的. 你在本地创建文件的时候自然会找不到文件夹.就会造成图上的错误 解决办法:1.打开虚拟机 2.连接上...
  • 1.进入到sqlplus启动实例[oracle@redhat ~]$ su - oracle --“切换到oracle用户”Password:[oracle@redhat ~]$ lsnrctl start --“打开监听”[oracle@redhat ~]$ sqlplus...
  • 环境:RHEL 6.5 Oracle 11.2.0.3如果有RMAN备份的话,如果恢复数据文件就可以完成,本次我们测试在没有备份的情况下如何拉起数据库重命名UNDO表空间的数据文件[oracle@test-dborcl]$mvundotbs02.dbfundotbs02.dbf_...
  • 因为国产化,数据库采用国产的人大金仓,原先存放于oracle 12c的数据也要迁移过来。 人大金仓,改自开源的数据库项目pg(postgreSql),这点人大金仓自己也承认。因此目前查人大金仓,如果资料匮乏,直接查pg也是...
  • 大家知道,达梦数据库中的表空间是由一个或多个数据文件组成。当表空间空间不足的情况下,最自然想到的办法当然是修改数据文件的大小。这里我们利用管理工具来进行演示: 首先右键点击表空间名称,点击修改 ...
  • 撤销管理模式:用户通过...数据库系统既可以运行在手动撤销管理模式下,也可以运行于自动撤销管理模式下。在手动撤销管理模式下,撤销空间通过回滚段(rollback segment)管理。在自动撤销管理模式下,撤销空间通过...
  • 前提要求是电脑上要安装了oracle数据库,首先启动命令行窗口 进去后会让你输入用户名 这里输入system和对应的密码,不记得密码的话可以参考这个文章修改一下密码: 修改system用户密码 如上图所示就表示成功登录。...
  • 对于许多数据库管理员来说,究竟是不是一个难以管理和驾驭的怪兽级数据库,会不会让他们管理生涯饱受折磨?当看到其命令行界面时,很多人会问这么一个问题。如果你想通过一个应用程序操控使用这个数据库,那么你应当...
  • 用sqlplus为oracle创建用户和表空间用Oracle9i自带的企业管理器或PL/SQL图形化的方法创建表空间和用户以及分配权限是相对比较简单的,本文要介绍的是另一种方法,使用Oracle 9i所带的命令行工具:SQLPLUS来创建表...
  • 二、创建一个数据库 2.1、打开数据库的树结构选项,查看可用的数据库。postgres数据库是默认的postgres用户所属的用户数据库,我们不对该数据库感兴趣。 2.2、鼠标右击数据库选项并选择新建数据库: 2.3、如下图所...
  • oracle在cmd创建数据库

    2021-04-30 09:10:58
    本文收集整理关于oracle在cmd创建数据库的相关议题,使用内容导航快速到达。内容导航:Q1:CMD下如何选择登陆数据库 oracle1、首先在电脑端打开开始处的运行程序,进行点击操作。2、然后输入命令cmd,进入cmd操作...
  • Oracle-创建本地数据库

    2021-05-01 12:08:38
    开发环境名称版本操作系统Windows 10 X64Oraclewin64_11gR2_databasePLSQL Developer11.0.4.1788(64 bit)01.179332 - Unlimited user license参考前提条件创建数据库开始菜单,打开 Oracle - OraDb11g_home1-配置和...
  • Mysql技术知识点Mysql技术知识点,首先来讲一下Mysql语句精进安装数据库,然后导入tigerfive.sql。 sql见文档结尾部分MySQL示例数据库模式由以下...文章好程序员2019-12-031962浏览量11、mysql导出数据库表创建sql...
  • 1、 在ArcMap中打开系统工具箱-数据管理工具-创建企业级地理数据库 2、数据库平台:SQL_Server 3、实例:将要连接的 SQL Server 实例的名称 NOTE:将下图名称处,全部复制,否则报错。我就是看到了下边提示说...
  • 首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.如果刚安装好MYSQL,超级用户...
  • 《oracle手动创建数据库步骤》由会员分享,可在线阅读,更多相关《oracle手动创建数据库步骤(7页珍藏版)》请在人人文库网上搜索。1、oracle手动创建数据库步在Oracle中建库,通常有两种方法。一是使用Oracle的建库工...
  • 使用create database语句创建数据库的步骤如下:1.指定一个实例标识符SID2.确保设置了必要的环境变量3.选择一个数据库管理员验证...创建额外的表空间11.运行脚本来创建数据字典视图12.(可选项)运行脚本来安装可选项13...
  • 测试数据库重启报如下的错: [dmdba@dsc3 bin]$ ./DmServiceDMSERVER start Starting DmServiceDMSERVER: ./DmServiceDMSERVER: line 413: 2834 Floating point exception(core dumped) eval exec "\"$EXEC_PROG_...
  • 创建oracle数据库实例

    2021-04-27 10:23:51
    安装数据库10g,已安装的可忽略此...PS:“删除数据库”中可查看现有的所有数据和删除某一数据库【温馨提示:谨慎操作】 3、直接“下一步” 4、填写“全局数据库名”,然后点击“下一步” 5、直接“下一...
  • 本文主要向大家介绍了Oracle数据库之[ArcGIS]Oracle RAC下创建地理数据库失败的解决方法,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。环境:Oracle11g11.2.0.1.0(双节点RAC群集),ArcGIS...
  • 介绍一下如何用批处理命令来创建、删除Oracle数据库表空间和用户。1、一共要创建2个文件如图所示,一个是批处理文件安装.bat,一个是执行SQL命令的init.sql文件。至于日志.log是自动生成的文件。 2、创建一个安装....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 86,838
精华内容 34,735
关键字:

创建表空间提示数据库未打开