设为首页 收藏本站
查看: 737|回复: 0

[经验分享] oracle建表过程的一些脚本步骤

[复制链接]

尚未签到

发表于 2016-7-24 11:48:31 | 显示全部楼层 |阅读模式
  最近项目要用oracle,却没能事先看点相关资料:(硬着头皮只能上。
    用惯了sql server所以一开始真是不适应,开始想象数据库应该相通区别不大的吧。可是装上用发现突然不知道该做些什么了,以前用sql server干活前的一些准备工作,如今不知道怎么在oracle中建立。
    有朋友给我写了一个简单的建立用户的例子。稍微有点概念。
    最后得知公司另外一个小组的一个同事2年前曾用过oracle8i,可惜他们小组太忙不可能给我做技术支持。只能从他那里得到他以前做项目时脚本写的一些建用户,空间,角色的资料,边看边试。
接着我就把这些经过我目前测试的步骤记录下来,希望能给以后象我目前状况一样的oracle初学者一个帮助。闲话少说开始进入正题吧。
  所有代码均在oracle 9i的sql*plus中测试。以下这些步骤最好各建立独立文件来运行。
  一,创建自己的用户文件(表的拥有者)。
  PROMPT -------------------------------------;
PROMPT This part is to setup object creator.;
PROMPT -------------------------------------;
PROMPT;
  DROP USER 你要建立的用户名 CASCADE;
CREATE USER 你要建立的用户名 IDENTIFIED BY 你要建立的用户密码
  DEFAULT TABLESPACE USERs(USERs这里注意8i听说是USER_DATA)
  TEMPORARY TABLESPACE TEMP;(TEMP这里注意8i听说是TEMPORARY_DATA)
  GRANT DBA TO 用户名 WITH ADMIN OPTION;
  
    二、 disc退出;然后用自己建的用户登录:conn 用户名/密码@连接字符串;
以下操作顺序不可颠倒:
    三、创建自己的表空间及对应的数据文件(创建的表都在这些表空间上。)文件
  注:我目前的了解这些表空间个数的建立根据你的数据量,数据量大的表或者模块可以分配单独的空间。
这里的数据文件需要说明一下ora只能建立数据文件,所以代码中的存放路径要你事先建立。
也就是说'd:\database\ora\自定义的模块名a\d01.ora'这块你要事先在你的系统建立d:\database\ora\自定义的模块名a目录。
PROMPT;
PROMPT ------------------------------------------;
PROMPT This part is to setup needed table spaces.;
PROMPT ------------------------------------------;
  
  CREATE TABLESPACE 自定义的模块名a
  DATAFILE 'd:\database\ora\projet_info\d01.ora' SIZE 2M REUSE
  DEFAULT STORAGE ( INITIAL 50K NEXT 50K
                    PCTINCREASE 0
                    MAXEXTENTS UNLIMITED
                  )
  ONLINE;
  
CREATE TABLESPACE 自定义的模块名b
.....
代码几乎一样就不重复了。
  四、创建系统用到的角色文件(根据系统的功能划分)
  PROMPT -----------------------------------;
PROMPT This part is to setup needed roles.;
PROMPT -----------------------------------;
PROMPT;
  
CREATE ROLE 角色1;
  
CREATE ROLE 角色2;
。。。。
  
  
  GRANT create session,create view TO 角色x,角色y;
grant create session to 角色a;
GRANT create session,
      alter user,create user,drop user,
      grant any role to 角色b;
  
    五、创建系统一些默认的用户文件(如admin,backup等),并分配相应的角色;
  PROMPT -----------------------------------;
PROMPT This part is to setup needed users.;
PROMPT -----------------------------------;
PROMPT;
  
  DROP USER ADMIN用户名 CASCADE;
CREATE USER admin用户名 IDENTIFIED BY admin密码
  DEFAULT TABLESPACE USERs(上面提过这里不重复了)
  TEMPORARY TABLESPACE TEMP;(上面提过这里不重复了)
  GRANT 角色b (这里结合步骤四来看就是把最大权限的角色b分给了admin用户)to admin用户名;
  DROP USER 用户名a CASCADE;
CREATE USER 用户名a IDENTIFIED BY 密码
  DEFAULT TABLESPACE USERs
  TEMPORARY TABLESPACE TEMP;
  GRANT 一个前面(四)建立的角色 to test;
  
DROP USER 用户名b CASCADE;
CREATE USER 用户名b IDENTIFIED BY 密码
  DEFAULT TABLESPACE USERs
  TEMPORARY TABLESPACE TEMP;
  grant create session to 用户名b;
.....
  
注:四,五这2步不是必需的,根据情况自己选择吧。
  六、创建表文件:最好根据实际的业务划分,分成多个文件(如all.sql,a.sql,b.sql),方便以后的数据库维护.
all.sql的内容:@a.sql;
               @b.sql;
a.sql的内容:@table1.sql;
         @table2.sql;
b.sql的内容:@table4.sql;
             @table5.sql;
  执行的时候根据需要选择执行。
  补充说明:
1.如果你用的也是SQL*PLUS,执行上述文件前,先把以上所涉及的各个文件复制到Oracle安装目录下的\bin下面,执行方式如下:
SQL>@文件名;
  
可能有人会问为什么纯用脚本建立?便于日后查阅维护。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-248600-1-1.html 上篇帖子: 深入分析Oracle数据库日志文件 下篇帖子: Oracle体系结构之-内存结构
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表