SYSTEM表空间是Oracle创建数据库时候自动创建的,每个Oracle数据库都会有SYSTEM表空间,而且SYSTEM表空间总是要保持在联机模式下,因为其包含了数据库运行所要求的基本信息,如:数据字典、联机求助机制、所有回退段、临时段和自举段、所有的用户数据库实体、其它ORACLE软件产品要求的表等等。

设置方法

编辑

在建立数据库的时候,SYSTEM表空间一般都写在磁盘最开始的位置,这就埋下了问题的隐患。如:误操作导致的格式化,ASM出现故障等等一系列的问题,他都会从磁盘最开始的地方写起,这样就会导致SYSTEM表空间没有办法进行数据恢复
但是,如果在建立数据库的时候,把最开始的位置“让”出来,这样就会使得很多故障轻能而易举的解决,也让DBA在管理数据库、恢复数据库的时候能轻松一些。
 
查询Oracle表空间剩余大小
---查询Oracle表空间使用情况--
SELECT
-- '表空间名称'
a.tablespace_name as "表空间名称",
-- 表空间总大小(byte)
total as "表空间总大小(byte)",
-- 表空间剩余大小(byte)
free as "表空间剩余大小(byte)",
-- 表空间已使用大小(byte)
(total - free) as "表空间已使用大小(byte)",
-- 表空间总大小(G)
total / (1024 * 1024 * 1024) as "表空间总大小(G)" ,
-- 表空间剩余大小(G)
free / (1024 * 1024 * 1024) as "表空间剩余大小(G)",
-- 表空间已使用大小(G)
(total - free) / (1024 * 1024 * 1024) as "表空间已使用大小(G)" ,
round((total - free) / total, 4) * 100 as "Usage Rate(%)"
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;

  

这里的system使用率达到了99.27%,接下来登入数据库服务器为system添加表空间

Linux系统下使用SQLPLUS命令登入Oracle

1. 输入: su  oracle     // 必须使用oracle 用户

说明:  直接进入的目录是   /home/oraccle

[root@crb-db1 ~]# su - oracle
Last login: Tue May 11 10:47:23 CST 2021 on pts/0
[oracle@crb-db1 ~]$ sqlplus as / sysdba SQL*Plus: Release 11.2.0.4.0 Production Copyright (c) 1982, 2013, Oracle. All rights reserved. 使用 SQL*Plus 执行 SQL, PL/SQL 和 SQL*Plus 语句。 用法 1: sqlplus -H | -V -H 显示 SQL*Plus 版本和
用法帮助。
-V 显示 SQL*Plus 版本。 用法 2: sqlplus [ [<option>] [{logon | /nolog}] [<start>] ] <option> 为: [-C <version>] [-L] [-M "<options>"] [-R <level>] [-S] -C <version> 将受影响的命令的兼容性设置为
<version> 指定的版本。该版本具有
"x.y[.z]" 格式。例如, -C 10.2.0
-L 只尝试登录一次, 而不是
在出错时再次提示。
-M "<options>" 设置输出的自动 HTML 标记。选项
的格式为:
HTML [ON|OFF] [HEAD text] [BODY text] [TABLE text]
[ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}]
-R <level> 设置受限模式, 以禁用与文件系统交互的
SQL*Plus 命令。级别可以
是 1, 2 或 3。最高限制级别为 -R 3, 该级别
禁用与文件系统交互的
所有用户命令。
-S 设置无提示模式, 该模式隐藏
命令的 SQL*Plus 标帜, 提示和回显
的显示。 <logon> 为: {<username>[/<password>][@<connect_identifier>] | / }
[AS {SYSDBA | SYSOPER | SYSASM}] [EDITION=value] 指定数据库帐户用户名, 口令和数据库连接
的连接标识符。如果没有连接
标识符, SQL*Plus 将连接到默认数据库。 AS SYSDBA, AS SYSOPER 和 AS SYSASM 选项是数据库
管理权限。 <connect_identifier> 的形式可以是 Net 服务名
或轻松连接。 @[<net_service_name> | [//]Host[:Port]/<service_name>] <net_service_name> 是服务的简单名称, 它解析
为连接描述符。 示例: 使用 Net 服务名连接到数据库, 且
数据库 Net 服务名为 ORCL。 sqlplus myusername/mypassword@ORCL Host 指定数据库服务器计算机的主机名或 IP
地址。 Port 指定数据库服务器上的监听端口。 <service_name> 指定要访问的数据库的
服务名。 示例: 使用轻松连接连接到数据库, 且
服务名为 ORCL。 sqlplus myusername/mypassword@Host/ORCL /NOLOG 选项可启动 SQL*Plus 而不连接到
数据库。 EDITION 指定会话 Edition 的值。 <start> 为: @<URL>|<filename>[.<ext>] [<parameter> ...] 使用将分配给脚本中的替代变量的指定参数
从 Web 服务器 (URL) 或本地文件系统 (filename.ext)
运行指定的 SQL*Plus 脚本。 在启动 SQL*Plus 并且执行 CONNECT 命令后, 将运行站点概要
文件 (例如, $ORACLE_HOME/sqlplus/admin/glogin.sql) 和用户概要文件
(例如, 工作目录中的 login.sql)。这些文件
包含 SQL*Plus 命令。 有关详细信息, 请参阅 SQL*Plus 用户指南和参考。
[oracle@crb-db1 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on################### Copyright (c) 1982, 2013, Oracle. All rights reserved. 连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
--查看当前数据库中表空间是否为自动扩展
SQL> select tablespace_name,file_name,autoextensible from dba_data_files; TABLESPACE_NAME
------------------------------
FILE_NAME
--------------------------------------------------------------------------------
AUT
---
USERS
/data/oradata/orcl/users01.dbf
YES UNDOTBS1
/data/oradata/orcl/undotbs01.dbf
YES TABLESPACE_NAME
------------------------------
FILE_NAME
--------------------------------------------------------------------------------
AUT
--- SYSAUX
/data/oradata/orcl/sysaux01.dbf
YES SYSTEM
/data/oradata/orcl/system01.dbf TABLESPACE_NAME
------------------------------
FILE_NAME
--------------------------------------------------------------------------------
AUT
---
YES 已选择24行。 --增加新的数据文件
SQL> alter tablespace SYSTEM add datafile '/data/oradata/orcl/system02.dbf' size 10G autoextend on; 表空间已更改。 SQL>

  

SYSTEM表空间满,解决方法的更多相关文章

  1. system表空间爆满解决方法

      分类: Oracle 问题描述: 对数据库做检查,发现system表空间持续占满99%.使用如下语句查看: SQL> select b.tablespace_name "表空间&q ...

  2. Oracle system表空间满的暂定解决方法

    Oracle system表空间满的暂定解决方法 数据库用的是Oracle Express 10.2版本的.利用Oracle Text做全文检索应用,创建用户yxl时没有初始化默认表空间,在系统开发过 ...

  3. ORACLE system表空间满

    解决方法:执行迁移命令,将AUD$表相关移到其它表空间中,也可以新建 一个审计 表空间 / MB DESC) ; alter table aud$ move tablespace SIEBELINDE ...

  4. UNDO表空间不足解决方法

    确认UNDO表空间名称 select name from v$tablespace; 检查数据库UNDO表空间占用空间情况以及数据文件存放位置: select file_name,bytes/1024 ...

  5. system表空间用满解决

      分类: Oracle 早上看到alert日志报说system表空间快满了(oracle版本是11gR2):   如果system表空间不是自动扩展,空间用满甚至会出现数据库无法登陆.使用任何用户登 ...

  6. system表空间空间不足解决办法

    场景描述: 系统表空间空间不足,导致应用无法正常连接!!! 环境描述: ORACLE 11G 查看当前表空间的整体使用情况,以及有没有开启自动扩展,以及扩展的最大限制!!! ---tablespace ...

  7. oracle数据库解决system表空间已爆满的问题

    有时会发现数据库system表空间增长很快,使用以下语句查看system表空间使用量.也可以使用toad直接看. select b.tablespace_name "表空间", b ...

  8. [转载]oracle 11g不能导出空表的多种解决方法

    原文地址:11g不能导出空表的多种解决方法">oracle 11g不能导出空表的多种解决方法作者:Anlin_Yang ORACLE 11g 用exp命令导出库文件备份时,发现只能导出 ...

  9. System表空间大小有10Gb,使用率达到95%,

    System表空间大小有10Gb,使用率达到95%,很好奇, 随后执行如下SQL,查看system表空间中使用空间最多的对象 SQL>SELECT * FROM DBA_SEGMENTS T W ...

随机推荐

  1. String 既然能做性能调优,我直呼内行

    码哥,String 还能优化啥?你是不是框我? 莫慌,今天给大家见识一下不一样的 String,从根上拿捏直达 G 点. 并且码哥分享一个例子:通过性能调优我们能实现百兆内存轻松存储几十 G 数据. ...

  2. Flask_Flask-Migrate数据迁移扩展(十二)

    在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库.最直接的方式就是删除旧表,但这样会丢失数据.更好的解决办法是使用数据库迁移框架,它可以追踪数据库模式的变化,然后把变动应用到数据库中. ...

  3. vert.x框架-简单路由使用

    package xue.myVertX; import io.vertx.core.AbstractVerticle; import io.vertx.core.Vertx; import io.ve ...

  4. Windows 和 Ubuntu 的网络能互相 ping 通之后,linux无法上网原因:①路由没设置好,②DNS 没设置好

    确保 Windows 和 Ubuntu 的网络能互相 ping 通之后,如果 Ubuntu 无法上网,原因通常有 2 个:路由没设置好,DNS 没设置好. 如果执行以下命令不成功,表示路由没设置好: ...

  5. 源代码管理git地址从http改为https,提交400错误

    推送400错误 cmd 执行 git config --global http.sslVerify false 推送地址,修改http 为 https 就可以正常提交了

  6. Redis的几点积累

    1.Redis比memcache快 Redis具有事务,持久化等机制,但是它还能做到高性能,原因包括如下: Libevent.和Memcached不同,Redis并没有选择libevent.Libev ...

  7. 44.Prim算法

    public static void main(String[] args) { //测试看看图是否创建ok char[] data = new char[]{'A','B','C','D','E', ...

  8. 【转载】Systemd 入门教程:实战篇

    作者: 阮一峰 日期: 2016年3月 8日 上一篇文章,我介绍了 Systemd 的主要命令,今天介绍如何使用它完成一些基本的任务. 一.开机启动 对于那些支持 Systemd 的软件,安装的时候, ...

  9. java输入年份和月份,输出天数

    import java.util.*; public class Demo { public static void main(String[] args){ int days = 0; Scanne ...

  10. Water 2.5 发布,一站式服务治理平台

    Water(水孕育万物...) Water 为项目开发.服务治理,提供一站式解决方案(可以理解为微服务架构支持套件).基于 Solon 框架开发,并支持完整的 Solon Cloud 规范:已在生产环 ...