[20180328]不要在sys建立用户对象.txt

简介: [20180328]不要在sys建立用户对象.txt --//好几年前遇到的问题,开发安装UTL_DBWS在linux下遇到问题,最后选择winows下安装. --//随着业务增加,无法支撑,需要数据库组迁移到linux下,也就是我当时的安装笔记: --//http://blog.

[20180328]不要在sys建立用户对象.txt

--//好几年前遇到的问题,开发安装UTL_DBWS在linux下遇到问题,最后选择winows下安装.
--//随着业务增加,无法支撑,需要数据库组迁移到linux下,也就是我当时的安装笔记:
--//http://blog.itpub.net/267265/viewspace-2099501/

--//但是在迁移中遇到一件我苦笑不得的事情,开发把整个应用建立在sys用户下,无语.好在应用不大,很容易移植.
--//实际上不要在sys下建立任何用对象.通过一个简单的例子加强印象.

1.环境:

SYS@book> @ &r/ver1
PORT_STRING                    VERSION        BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx            11.2.0.4.0     Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

SYS@book> select count(*) from dba_objects where status = 'INVALID';
  COUNT(*)
----------
         1

--//仅仅有1个无效对象.

SYS@book> create table SYS.SYSTEM (id number);
Table created.

SYS@book> select count(*) from dba_objects where status = 'INVALID';
  COUNT(*)
----------
       176

--//建立一个特殊的表system,就导致无效对象增加到176.
--//重新编译看看:

SYS@book> @ /u01/app/oracle/product/11.2.0.4/dbhome_1/rdbms/admin/utlrp.sql

SYS@book> select count(*) from dba_objects where status = 'INVALID';
  COUNT(*)
----------
        39

--//依旧有39-1个.

SYS@book> drop table sys.system purge ;
Table dropped.

SYS@book> @ /u01/app/oracle/product/11.2.0.4/dbhome_1/rdbms/admin/utlrp.sql
...

SYS@book> select count(*) from dba_objects where status = 'INVALID';
  COUNT(*)
----------
         1

--//实际上建立在sys下还有许多问题,比如一些oracle特性无效,数据建立在system表空间等等.
--//总之下次拿这个例子来吓唬一下开发...

目录
相关文章
|
11月前
|
编译器 API C语言
C/C++ 获取文件名的方法:分享一些实用的获取文件名的方法和技巧(__FILE__,__builtin_FILE(),__BASE_FILE__等)
C/C++ 获取文件名的方法:分享一些实用的获取文件名的方法和技巧(__FILE__,__builtin_FILE(),__BASE_FILE__等)
956 0
|
10月前
|
机器学习/深度学习 监控 物联网
函数计算操作报错合集之调用接口提示Cannot copy out of meta tensor; no data! 是什么原因
在使用函数计算服务(如阿里云函数计算)时,用户可能会遇到多种错误场景。以下是一些常见的操作报错及其可能的原因和解决方法,包括但不限于:1. 函数部署失败、2. 函数执行超时、3. 资源不足错误、4. 权限与访问错误、5. 依赖问题、6. 网络配置错误、7. 触发器配置错误、8. 日志与监控问题。
418 0
|
7月前
|
Java
File类的基本使用【 File类+IO流知识回顾①】
这篇文章回顾了Java中File类的基本使用,包括创建File对象、获取文件数据信息、判断文件存在与否、创建和删除文件目录,以及遍历文件目录的方法。
File类的基本使用【 File类+IO流知识回顾①】
|
7月前
|
API PHP 数据库
Laravel框架下通过DB获取数据并转为数组的方法
通过上述方法,Laravel为开发者提供了一套灵活而强大的工具,用于从数据库中检索数据并将其转换为数组。无论是使用DB Facade直接执行查询,还是利用模型的方法,Laravel都能够简化这一过程,使得代码既简洁又富有表现力。在实际开发中,选择最适合你需求的方法可以有效提高开发效率和应用性能。
200 0
|
8月前
|
Java
IO流操作-------File类(一)
这篇文章介绍了Java中File类的常用操作,包括创建文件/文件夹、删除文件、查询文件属性(如存在性、大小、名称、路径)以及递归遍历文件夹下所有文件的方法。
IO流操作-------File类(一)
|
8月前
|
Java 数据库连接 数据库
|
8月前
|
Java
成功解决:java: 找不到符号 符号: 方法 getSort() 位置: 类型为com.atguigu.gulimall.product.entity.CategoryEntity的变量 menu1
这篇文章讨论了Java中遇到的一个常见错误:"java: 找不到符号 符号: 方法 getSort() 位置: 类型为com.atguigu.gulimall.product.entity.CategoryEntity的变量 menu1",即在尝试调用一个不存在的方法时出现的问题,并提供了相应的解决方法。
|
10月前
|
Java
在 Java 中,类是一种定义对象的模板,它包含数据成员(字段)和方法。
在 Java 中,类是一种定义对象的模板,它包含数据成员(字段)和方法。
定义好变量,${age}模版字符串,对象可以放null,检验数据类型console.log(typeof str)
定义好变量,${age}模版字符串,对象可以放null,检验数据类型console.log(typeof str)
|
11月前
|
Java
Java常用封装Base对象
Java常用封装Base对象
55 0