表空间

undo表空间丢失、损坏

China☆狼群 提交于 2019-11-28 04:16:29
1、模拟误删undo表空间 rm -rf undotbs01.dbf 2、 SQL> shutdown immediate ORA-01116: error in opening database file 3 ORA-01110: data file 3: '/u01/app/oracle/oradata/PROD1/undotbs01.dbf' ORA-27041: unable to open file Linux Error: 2: No such file or directory Additional information: 3 SQL> select status from v$instance; STATUS ------------ OPEN SQL> shutdown abort; ORACLE instance shut down. SQL> startup ORACLE instance started. Total System Global Area 849530880 bytes Fixed Size 1348244 bytes Variable Size 499125612 bytes Database Buffers 343932928 bytes Redo Buffers 5124096 bytes Database mounted. ORA

Oracle数据库表空间扩容方法

穿精又带淫゛_ 提交于 2019-11-28 02:57:09
----查询表空间使用情况---- 方法1: select a.tablespace_name, (a.bytes/1024/1024) "total(MB)", (b.bytes/1024/1024) "free(MB)", round((a.bytes-b.bytes)*100/a.bytes, 2) "used%" from (select tablespace_name, sum(bytes) bytes from dba_data_files group by tablespace_name) a, (select tablespace_name, sum(bytes) bytes from dba_free_space group by tablespace_name) b where a.tablespace_name=b.tablespace_name order by (a.bytes-b.bytes) desc; 方法2: SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT

PostgreSQL的表空间

こ雲淡風輕ζ 提交于 2019-11-28 02:43:13
PostgreSQL中的表空间允许数据库管理员在文件系统中定义可以存储表示数据库对象的文件的位置。创建后,可以在创建数据库对象时按名称引用表空间。 通过使用表空间,管理员可以控制PostgreSQL安装的磁盘布局。这至少在两个方面很有用。首先,如果初始化集群的分区或卷空间不足并且无法扩展,则可以在不同的分区上创建表空间并使用,直到可以重新配置系统。其次,表空间允许管理员使用数据库对象的使用模式的知识来优化性能。例如,非常频繁使用的索引可以放置在非常快速,高度可用的磁盘上,如昂贵的固态设备。同时,存储很少使用或不具有性能关键的存档数据的表可以存储在较便宜,较慢的磁盘系统上。 即使位于PostgreSQL主数据目录之外,表空间也是数据库集群的组成部分,不能被视为数据文件的自治集合。它们依赖于主数据目录中包含的元数据,因此无法附加到其他数据库集群或单独备份。同样,如果丢失表空间(文件删除,磁盘故障等),数据库群集可能会变得不可读或无法启动。将表空间放在像RAM磁盘这样的临时文件系统上会降低整个集群的可靠性。 创建一个表空间: postgres=# create tablespace pgtbl_test location '/pgtest'; 该位置必须是PostgreSQL操作系统用户拥有的现有空目录。随后在表空间中创建的所有对象都将存储在此目录下的文件中

oracle建表空间、用户

十年热恋 提交于 2019-11-28 02:33:15
建表空间 语法:create tablespace tablespace_name datafile datafile_path size 2048M; tablespace_name:表空间的名称 datafile_path:数据文件的存储路径,必须有读写的权限,可以用chmod设置 size:表空间大小 举例:create tablespace oacloud datafile '/oracle_data_file/oacloud.dbf' size 2048M; 建用户 语法:create user user_name identified by user_pwd default tablespace tablespace_name ; user_name:用户名 user_pwd:用户密码 tablespace_name:上一步建的表空间 举例:create user dtoa identified by dtoa default tablespace oacloud; 给用户授权 grant connect,resource to dtoa; grant dba to dtoa; 查看表空间 SELECT T.TABLESPACE_NAME, ROUND(SUM(BYTES / (1024 * 1024)), 0) TS_SIZE FROM DBA_TABLESPACES

oracle查看表空间的真实使用情况

。_饼干妹妹 提交于 2019-11-28 00:52:55
--查看表空间的真实使用情况 set linesize 500 pagesize 500 col tablespace_name format a25 col TP_REAL_GB format a15 col TP_REAL_FREE_GB format a20 select all_tp.TP_NAME "TABLESPACE_NAME", to_char(trunc(all_tp.TP_ALL_SIZE_KB / 1024 / 1024, 2), 'FM9999990.0099') "TP_REAL_GB", to_char(trunc(free_tp.TP_FREE_SIZE_KB / 1024 / 1024, 2), 'FM9999990.0099') "TP_REAL_FREE_GB", (to_char(trunc(all_tp.TP_ALL_SIZE_KB / 1024 / 1024, 2), 'FM9999990.0099') - to_char(trunc(free_tp.TP_FREE_SIZE_KB / 1024 / 1024, 2), 'FM9999990.0099')) "TP_REAL_USED_GB", to_char(trunc(free_tp.TP_FREE_SIZE_KB * 100 / all_tp.TP_ALL_SIZE_KB, 2),

Oracle批量更改用户下表空间

谁说胖子不能爱 提交于 2019-11-28 00:35:49
--查询某个用户下的表,并生成一个修改其命名空间的批处理语句 select 'alter table '|| table_name ||' move tablespace 要迁入的表空间;' from dba_tables t where t.owner='要迁出的表归属的用户名'; 结果如下: 这个时候,只需要复制下来,批量执行就够了。。 来源: https://www.cnblogs.com/jianshuai520/p/11383059.html

移动oracle数据文件的两种方法

我与影子孤独终老i 提交于 2019-11-27 23:55:03
1.alter database方法 该方法,可以移动任何表空间的数据文件。 ***关闭数据库*** SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. ***移动数据文件,用oracle用户操作*** [oracle@test ~]$ mv /u01/app/oracle/oradata/test/system01.dbf /oracledb/test/system01.dbf [oracle@test ~]$ mv /u01/app/oracle/oradata/test/sysaux01.dbf /oracledb/test/sysaux01.dbf [oracle@test ~]$ mv /u01/app/oracle/oradata/test/undotbs01.dbf /oracledb/test/undotbs01.dbf [oracle@test ~]$ mv /u01/app/oracle/oradata/test/users01.dbf /oracledb/test/users01.dbf [oracle@test ~]$ mv /u01/app/oracle/oradata/test/temp01.dbf /oracledb/test

Oracle常用操作总结

◇◆丶佛笑我妖孽 提交于 2019-11-27 22:49:33
如何创建新用户? 要创建新用户,必须以 system 或者 sysman (权限最大)的身份登录;    在创建数据库时输入的密码,是修改系统默认的密码,以 system 和 sysman 等系统默认身份登录时要输入的密码就是修改后的密码 ( 创建数据库时输入的密码 ) 另外,创建用户前必须要先建好临时表空间和数据表空间两个表空间, 如果用系统默认的表空间则会带来一系列麻烦,不好! 表空间是 oracle 数据库中最大的逻辑单位与存储空间单位,数据库系统通过表空间为数据库对象分配空间。表空间在物理上体现为磁盘数据文件,每一个表空间由一 个或多个数据文件组成,一个数据文件只可与一个表空间相联系,这是逻辑与物理的统一。 具体步骤: 创建临时表空间 create temporary tablespace zheda_temp tempfile 'E:\oracle\product\10.2.0\oradata\zheda\zheda.dbf'’ size 100m autoextend on next 32m maxsize 2048m extent management local; 说明: ü zfmi_temp 表空间的名字 ü E:\oracle\product\10.2.0\oradata\zheda 存放数据库文件的地方,一般是安装数据库后有控制文件

Oracle的基本操作

对着背影说爱祢 提交于 2019-11-27 21:51:18
1、创建表空间 create tablespace 表空间名 logging datafile 'C:\test.dbf' size 10M 2、删除表空间 drop tablespace 表空间名 including contents and datafiles 3、修改表空间名称 alter tablespace 原来表空间名 rename to 新表空间名; 4、创建用户 create user 用户名 identified by 密码 default tablespace 表空间名 5、删除用户 drop user 用户名 cascade 来源: https://www.cnblogs.com/Cuimc/p/11379190.html

oracle创建表空间

早过忘川 提交于 2019-11-27 21:40:45
转至:https://liujianshiwo.iteye.com/blog/1988094 1. 创建表空间 create tablespace xin_datafile datafile 'C:\kingstar\orcltb\xin_tb1.dbf' size 500M --存储地址 初始大小500M autoextend on next 10M maxsize 200M --每次扩展10M,无限制扩展 unlimited extent management local autoallocate segment space management auto; --创建临时表空间 create temporary tablespace user_temp tempfile 'D:\oracle\oradata\Oracle9i\user_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; --删除表空间 DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES; --建立UNDO表空间 CREATE UNDO TABLESPACE UNDOTBS02 DATAFILE '/oracle/oradata/db