Oracle 12c R2 单实例数据库创建 和 开机自启

环境:

CentOS7@VMware12,分配资源:CPU:2颗,内存:4GB,硬盘空间:30GB

Oracle12C企业版64位

下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

过程纪要:

  1. root身份安装依赖包:  
    yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp

     

  2.  建立用户和组:
    groupadd oinstall  
    groupadd dba  
    groupadd oper  
    useradd -g oinstall -G dba,oper oracle  
    echo "123456" | passwd --stdin oracle #oracle用户的登录密码,后续登录要用,记着。

     

  3. 创建安装目录:
    mkdir -p /orcl/app/oracle/product/12.1.0/db_1  
    chown -R oracle:oinstall /orcl/app  
    chmod -R 775 /orcl/app

     

  4. 修改内核参数vi /etc/sysctl.conf,添加:
    fs.aio-max-nr = 1048576  
    fs.file-max = 6815744  
    kernel.shmall = 2097152  
    kernel.shmmax = 1200000000    
    kernel.shmmni = 4096  
    kernel.sem = 250 32000 100 128  
    net.ipv4.ip_local_port_range = 9000 65500  
    net.core.rmem_default = 262144  
    net.core.rmem_max = 4194304  
    net.core.wmem_default = 262144  
    net.core.wmem_max = 1048576

    改好后,使之生效
    sysctl -p

    另外 上面的kernel.shmmax = 1200000000可能会有问题,后面咱们再说。

    或者你直接现在就写成4098955264

  5. 改文件限制:vi /etc/security/limits.conf,添加:
    oracle soft nproc 2047  
    oracle hard nproc 16384  
    oracle soft nofile 1024  
    oracle hard nofile 65536  
    oracle soft stack 10240

    注意:修改此文件是即时生效的,但可能要重登录后再看

  6. 以及vi /etc/pam.d/login,添加:
    session required pam_limits.so

     

  7. 修改ulimit:vi /etc/profile,添加:
    if [ $USER = "oracle" ]; then  
    if [ $SHELL = "/bin/ksh" ]; then  
    ulimit -p 16384  
    ulimit -n 65536a  
    else  
    ulimit -u 16384 -n 65536  
    fi  
    fi

     

  8. 修改环境变量。vi ~oracle/.bash_profile,添加:
    ORACLE_BASE=/orcl/app/oracle  
    ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1  
    ORACLE_SID=orcl  
    export ORACLE_BASE ORACLE_HOME ORACLE_SID  
    PATH=$ORACLE_HOME/bin:$PATH  
    export PATH  

     

  9. 用yum remove *openjdk* 把系统自带的openjdk卸载,再安装sun jdk:rpm -ivh jdk-8u144-linux-x64.rpm。(下载地址)(openjdk环境安装oracle GUI会报class not found的错)。然后$>java -version检查一下安装是否成功。上述工作完成后,建议重启系统。

    以上操作命令如下:

    Oracle 12c R2 单实例数据库创建 和 开机自启_第1张图片

  10. 以oracle用户登录,开始安装:
    su  oracle  
    cd /orcl/app/oracle  
    unzip linuxx64_12201_database.zip 
    export LANG="en_US"  
    cd /orcl/app/oracle/database  
    ./runInstaller

     

    注:下载好的Oracle要放到/orcl/app/oracle目录下,/orcl/app/oracle/下是2个目录:product和database。解压后的安装文件放在database下。然后就会出现安装界面,配置过程从略。需要注意的是字符集要选择unicode。如下

    1. Oracle 12c R2 单实例数据库创建 和 开机自启_第2张图片

  11.  

    Oracle 12c R2 单实例数据库创建 和 开机自启_第3张图片

  12.  

    Oracle 12c R2 单实例数据库创建 和 开机自启_第4张图片

  13.  

    Oracle 12c R2 单实例数据库创建 和 开机自启_第5张图片

  14.  

    Oracle 12c R2 单实例数据库创建 和 开机自启_第6张图片

  15.  

    Oracle 12c R2 单实例数据库创建 和 开机自启_第7张图片

  16.  

    Oracle 12c R2 单实例数据库创建 和 开机自启_第8张图片

  17.  

    Oracle 12c R2 单实例数据库创建 和 开机自启_第9张图片

  18. 安装中

    Oracle 12c R2 单实例数据库创建 和 开机自启_第10张图片

  19. 安装完成

    Oracle 12c R2 单实例数据库创建 和 开机自启_第11张图片

  20. 然后输入dbca启动数据图形化界面装数据库Oracle 12c R2 单实例数据库创建 和 开机自启_第12张图片

     

  21. 选择配置:这里我们选择高级配置,简单的自测

    Oracle 12c R2 单实例数据库创建 和 开机自启_第13张图片

  22. 根据自己需求配置:我选择定制的数据库(custom database)

    Oracle 12c R2 单实例数据库创建 和 开机自启_第14张图片

  23. 配置数据库容器:

    Oracle 12c R2 单实例数据库创建 和 开机自启_第15张图片

     

  24. 配置数据库存储方式:

    Oracle 12c R2 单实例数据库创建 和 开机自启_第16张图片

     

  25. 选择快速恢复区域:

     Oracle 12c R2 单实例数据库创建 和 开机自启_第17张图片

     

  26. 监听器配置:(创建数据库自动创建监听器,一定要是LISTENER默认的)Oracle 12c R2 单实例数据库创建 和 开机自启_第18张图片
  27. 选择数据库组件:

    Oracle 12c R2 单实例数据库创建 和 开机自启_第19张图片

  28. 数据库安全配置:

    Oracle 12c R2 单实例数据库创建 和 开机自启_第20张图片

  29. 内存、块、连接数量、字符集、连接模式、添加实例:

    Oracle 12c R2 单实例数据库创建 和 开机自启_第21张图片

    Oracle 12c R2 单实例数据库创建 和 开机自启_第22张图片Oracle 12c R2 单实例数据库创建 和 开机自启_第23张图片

     

    Oracle 12c R2 单实例数据库创建 和 开机自启_第24张图片

     

  30. 配置Orale EM 土豪可以去订购功能强大的EM:

     Oracle 12c R2 单实例数据库创建 和 开机自启_第25张图片

  31. 口令配置:我是用的是统一口令

    Oracle 12c R2 单实例数据库创建 和 开机自启_第26张图片

     

  32. 创建数据库配置:

    Oracle 12c R2 单实例数据库创建 和 开机自启_第27张图片

  33.  总结界面:(如果没有任何错误就可以finish安装)

    1. 请一定先执行/orcl/app/oracle/product/12.1.0/db_1/root.sh
  34.  

    1. Oracle 12c R2 单实例数据库创建 和 开机自启_第28张图片
  35. Oracle 12c R2 单实例数据库创建 和 开机自启_第29张图片

    cd /orcl/app/oracle/product/12.1.0/db_1
    ./root.sh

     

  36. 安装完成(一切顺利,未见报错)

    Oracle 12c R2 单实例数据库创建 和 开机自启_第30张图片

     

    启动

    1.#su - oracle 切换到 oracle 用户且切换到它的环境
    2.$lsnrctl status 查看监听及数据库状态
    3.$lsnrctl start 启动监听
    4.$sqlplus / as sysdba 以 DBA 身份进入 sqlplus
    5.SQL>startup 启动 db

     停止

    1.#su - oracle 切换到 oracle 用户且切换到它的环境
    2.$lsnrctl stop 停止监听
    3.$sqlplus / as sysdba 以 DBA 身份进入 sqlplus

     

    4.SQL>SHUTDOWN IMMEDIATE 关闭 db

    开机自启动

    1. 编辑/etc/oratab文件.

     orcl:/orcl/app/oracle/product/12.2.0/db_1:N

    将N改为Y(注意大写)

    /etc/oratab是在创建数据库实例时建立的,需要用root用户运行root.sh,如果忘记运行在自启动和关闭时会失败,错误信息:"/etc/oratab" is not accessible。

    它记录主机中有多少个数据库。

    在$ORACLE_HOME/bin目录下的$ORACLE_HOME/bin/dbstart和$ORACLE_HOME/bin/dbshut需要调用/etc/oratab文件,如果不存在,dbstart和dbshut将失败

    etc/oratab 格式为: SID:ORACLE_HOME:AUTO

     

    如果需要自动启动数据库,则将AUTO设为Y,在调用dbstart命令才生效。dbstart根据/etc/oratab中的配置来启动相应的数据库,选项只是能不能用$ORACLE_HOME/bin/dbstart和$ORACLE_HOME/bin/dbshut来启动和关闭数据库的开关。

    2.编辑 $ORACLE_HOME/dbstart 和 $ORACLE_HOME/dbshut( 或者在$ORACLE_HOME/bin/dbstart 和 $ORACLE_HOME/bin/dbshut

    找到 ORACLE_HOME_LISTNER=$1  这行, 修改成:
    ORACLE_HOME_LISTNER=$ORACLE_HOME

    3.添加系统启动项

    su - root

    vim /etc/rc.d/rc.local

    在文件末尾添加:

    su - oracle -c 'dbstart'

     

    好了,现在重启就会自动启动Oracle监听和实例啦.

Oracle 12c 开始支持 PLUGGABLE DATABASE,并且提供了一个方法在CDB和PDB之间切换。

 

1. 使用 show pdbs 可以确认当前有哪些PDB?

SQL> show pdbs  
  
    CON_ID CON_NAME           OPEN MODE  RESTRICTED  
---------- ------------------------------ ---------- ----------  
     2 PDB$SEED           READ ONLY  NO  
     3 TESTP1             MOUNTED  
SQL> 

上图中 PDB$SEED 并不是一个 PDB 而是一个 PDB的模板,状态始终是 READ ONLY。TESTP1 是一个PDB。

 

2. 切换到 TESTP1。

SQL> alter session set container=TESTP1;  
  
Session altered.  
  
SQL> show pdbs;  
  
    CON_ID CON_NAME           OPEN MODE  RESTRICTED  
---------- ------------------------------ ---------- ----------  
     3 TESTP1             MOUNTED  

3. 切回到 CDB。

SQL> alter session set container=CDB$ROOT;  
  
Session altered.  
  
SQL> show pdbs  
  
    CON_ID CON_NAME           OPEN MODE  RESTRICTED  
---------- ------------------------------ ---------- ----------  
     2 PDB$SEED           READ ONLY  NO  
     3 TESTP1             MOUNTED  

 

你可能感兴趣的:(Oracle)