ITPub博客

首页 > 数据库 > Oracle > Oracle 基础实践1:快速搭建环境(自动化一键部署)

Oracle 基础实践1:快速搭建环境(自动化一键部署)

原创 Oracle 作者:云小虫2019 时间:2019-04-03 17:00:50 0 删除 编辑

 对于公司里项目多,或者部署环境多的场景,可以做一些标准化的操作,编写一套脚本,完成一键快速部署环境。

 自动化的前提 只能是标准化,如果不能够制定标准,开太多的口子,太多的交互,势必会影响到自动化的实施,

 以下是我写的一套一键部署脚本,希望对需要的人,有所帮助

 一 、 数据库软件的一键安装部署,            

            12C_CentOS6.8 自动部署脚本.rar

          附件是我自己写的,在CentOS 6.8 上一键部署Oracle 12C, 需要在 software 里放入12C安装软件,然后直接加载到系统目录,然后直接运行主shell即可。     

  二、 数据库对象的一键创建

 下面举例,只是用windows平台中列一下目录(上边为 主目录, 下边 为 db 子目录)

  例如:     

 main.bat 调用 init_schema.bat, 

                        init_schema  调用db/tablespace 完成表空间的创建

                                              调用db/user            完成用户的创建

                                             调用db/schema      完成用户对象的创建

                        init_data.bat 

                        init_data     调用db/user1_data   完成用户user1数据的初始化

                                           调用db/user2_data   完成用户use2 数据的初始化

说明:

  1. 其中文本文件的字符集是utf-8,可以在bat开通设置   set nls_lang=AMERICAN_AMERICA.AL32UTF8, 用于读取文本文件内容,然后客户端字符集要与数据库服务端字符集保持一下(或者兼容考虑)

  2. 对于CICD中用这个脚本,可以增加一个update部分,每次调用的时候,输入版本参数,调用update目录里的相关版本部分。


其中涉及到的步骤如下 :                                       

1.软件安装:   安装数据库软件:| 图形安装 和 静默安装, 如果需要经常部署环境,可以配置好标准化参数,做成一键静默部 署

       建立连接:          |  connect / as sysdba ,通过操作系统认证

       启动数据库:       |  startup [nomount][mount][open]

                                  |  alter database open

        关闭数据库:       |  shutdown [abort][immediate][transactional][normal]

       对于12C版本,打开和关闭插拔数据库:     

                       所有插拔数据库    | alter pluggable database all open

       某个插拔数据库    | alter pluggable database pdb1 open

        查看数据库状态  | select name,open_mode from v$containers

  

               sqlplus设置     | set pagesize 1000 #  set linesize 120 # col name for a40 # col value for a40

2.初始化:  创建表空间和用户   | 可以写成交互脚本


          具体步骤:

        (1).创建表空间 :    

                                     create tablespace test_ts datafile 

                  'C:\oracle\app\oradata\test01.dbf' size 1024m,

                              autoextend on next 200m maxsize unlimited; 

                  'C:\oracle\app\oradata\test02.dbf' size 1024m

                              autoextend on next 200m maxsize unlimited; 

                 注意是每个文件下都要写上autoextend。 每个文件最多扩充至32G。

  (2). 查询数据文件路径  | select name from  v$datafile;

(3). 建立用户                | create user yun identified by ecs123 default tablespace test_ts;

(4). 赋权:                   | grant connect,resource to yun ;

                                     grant imp_full_database,unlimited tablespace to yun ;

(5).校验视图                 | select * from dba_users;

                                      select * from dba_tablespaces;

      select * from v$database;

      select * from v$instance;

3.登录:     操作系统授权登录         | sqlplus / as sysdba

               远程客户端登录             | sqlplus yun/yun123@ip_address/service_name;

                                      sqlplus yun/yun123@tns_name;

 

4.清理模式     删除表空间test_ts   | drop tablespace test_ts including contents and datafiles;

                     删除用户yun           | drop user yun cascade;


设置当前实例   :set ORACLE_SID = orcl | export ORACLE_SID = orcl

查看监听和实例:lsnrctl status


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69915315/viewspace-2640296/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
数据库,DevOps,Python

注册时间:2019-04-02

  • 博文量
    34
  • 访问量
    68339