码迷,mamicode.com
首页 > 数据库 > 详细

Linux与云计算——第二阶段Linux服务器架设 第一十二章:数据库搭建—Oracle Database 12c

时间:2016-08-13 14:19:28      阅读:338      评论:0      收藏:0      [点我收藏+]

标签:oracle database 12c   oracle 12c   预需求   创建数据库   oracle net listener   使用企业管理器   

Linux与云计算——第二阶段Linux服务器架设

第一十二章:数据库搭建—Oracle Database 12c

3.1 预需求

安装 Oracle Database 12c.

在安装之前,更改一些安装Oracle数据时的要求设置

[1] 安装 Desktop Environment, refer to here.

[2] 安装required.

[root@server ~]# yum -y install binutils compat-libcap1 gcc gcc-c++ glibc glibc.i686 glibc-devel glibc.i686 ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++l7.i686 libstdc++-devel libstdc++-devel.i686 compat-libstdc++-33 compat-libstdc++-33.i686 libXi libXi.i686 libXtst libXtst.i686 make sysstat

[3] 编辑内核参数.

[root@server ~]# MEMTOTAL=$(free -b | sed -n ‘2p‘ | awk ‘{print $2}‘)

[root@server ~]# SHMMAX=$(expr $MEMTOTAL / 2)

[root@server ~]# SHMMNI=4096

[root@server ~]# PAGESIZE=$(getconf PAGE_SIZE)

[root@server ~]# cat >> /etc/sysctl.conf << EOF

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmmax = $SHMMAX

kernel.shmall = `expr \( $SHMMAX / $PAGESIZE \) \* \( $SHMMNI / 16 \)`

kernel.shmmni = $SHMMNI

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

EOF

[root@server ~]# sysctl -p

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmmax = 6274715648

kernel.shmall = 392169728

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

[4] 为数据库创建用户和组

[root@server ~]# i=54321; for group in oinstall dba backupdba oper dgdba kmdba; do

groupadd -g $i $group; i=`expr $i + 1`

done

[root@server ~]# useradd -u 1200 -g oinstall -G dba,oper,backupdba,dgdba,kmdba -d /home/oracle oracle

[root@server ~]# passwd oracle

Changing password for user oracle.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

[root@server ~]# mkdir -p /u01/app/oracle

[root@server ~]# chown -R oracle:oinstall /u01/app

[root@server ~]# chmod -R 775 /u01

[root@server ~]# vi /etc/pam.d/login

# near line 14: add

session    required     pam_selinux.so open

session    required     pam_namespace.so

 session    required     pam_limits.so

 session    optional     pam_keyinit.so force revoke

session    include      system-auth

-session   optional     pam_ck_connector.so

[root@server ~]# 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

oracle  hard  stack   32768

[5] 用oracle用户登录,设置环境变量

dlp login: oracle

Password:

[oracle@server ~]$ vi ~/.bash_profile

#结尾处添加:

umask 022

export ORACLE_BASE=/u01/app/oracle

# 为安装创建一个临时目录

 [oracle@server ~]$ mkdir tmp

3.2 安装Oracle 12c

[1] 用之前在设置中创建的用户登录来管理数据库。

技术分享[2]在linux操作系统上传和下载Oracle Databse 12c

 http://www.oracle.com/technology/software/products/database/index.html

[3] Oracle文件上传后,将其移到tmp目录并运行如下的安装程序。

 [oracle@server ~]$ cd tmp

[oracle@server tmp]$ unzip linuxamd64_12102_database_1of2.zip

[oracle@server tmp]$ unzip linuxamd64_12102_database_2of2.zip

[oracle@server tmp]$ ./database/runInstaller

[4] 安装程序启动如下。首先,从Oracle安全问题接收一些信息设置您的电子邮件地址和密码等。

 技术分享

 [5]在这个界面, 选择 "Install database software only". 

技术分享

[6]选择"Single Instance Database ***".

 技术分享

[7]选择语言.

技术分享

 [8] 选择你要安装的版本

技术分享

 [9] 为“甲骨文”指定基本目录和文件。在这个例子中,默认情况下,继续进行下一个。

 技术分享

[10] 指定已经安装的目录,默认继续.

 技术分享

 [11]指定特权组,默认继续.

技术分享

[12] 检查前的要求。如果有些设置没有按照建议配置,就会出来相关的通知,请再次确认它们。

技术分享

[13] 配置文件的总结。选择安装,就OK了.

技术分享

[14]开始安装

技术分享

[15]  下面的界面出现之后,找到一个终端开始用root用户执行下面的操作.

 技术分享

[root@server ~]# /u01/app/oraInventory/orainstRoot.sh

Changing permissions of /u01/app/oraInventory.

Adding read,write permissions for group.

Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.

The execution of the script is complete.

[root@server ~]#

[root@server ~]# /u01/app/oracle/product/12.1.0/dbhome_1/root.sh

Performing root user operation.

The following environment variables are set as:

    ORACLE_OWNER= oracle

    ORACLE_HOME=  /u01/app/oracle/product/12.1.0/dbhome_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:    # Enter

   Copying dbhome to /usr/local/bin ...

   Copying oraenv to /usr/local/bin ...

   Copying coraenv to /usr/local/bin ...

Creating /etc/oratab file...

Entries will be added to the /etc/oratab file as needed by

Database Configuration Assistant when a database is created

Finished running generic part of root script.

Now product-specific root actions will be performed.

[16] 安装完成,点击关闭。

 技术分享

[17] 为oracle用户设置环境变量

[oracle@server ~]$ vi ~/.bash_profile

# 结尾处添加

export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1

export PATH=$PATH:$ORACLE_HOME/bin

[oracle@server ~]$ source ~/.bash_profile

[oracle@server ~]$ rm -rf tmp

3.3 增加Oracle Net Listener

在oracle网络上创建oracle监听

[1]登录oracle界面,输入netca命令

技术分享

[2]检查 "Listener Configuration"  

技术分享

[3]一直next下去.

技术分享

[4] 输入监听名字,任意选择一个。    

技术分享    

[5] 默认"TCP".   

技术分享                                  

[6] Set a port. This example goes next   

技术分享

 [7] If you‘d like to create more with keeping default.  Listeners, Answer "Yes". This example selects "No".

技术分享

[8]配置完成. 

技术分享

[9] 在创建监听器,tnslsnr侦听端口配置如下。

[oracle@server~]$ ss -napt

State      Recv-Q Send-Q          Local Address:Port       Peer Address:Port

LISTEN     0      128                         *:22                    *:*

LISTEN     0      128                 127.0.0.1:631                   *:*

LISTEN     0      100                 127.0.0.1:25                    *:*

ESTAB      0      52                  10.0.0.30:22             10.0.0.5:50113

LISTEN     0      128                        :::1521                 :::*      users:(("tnslsnr",3988,9))

LISTEN     0      128                        :::22                   :::*

LISTEN     0      128                       ::1:631                  :::*

LISTEN     0      100                       ::1:25                   :::*

[oracle@server ~]$ tnsping localhost

TNS Ping Utility for Linux: Version 12.1.0.2.0 - Production on 04-JUL-2015 01:03:07

Copyright (c) 1997, 2014, Oracle.  All rights reserved.

Used parameter files:

Used HOSTNAME adapter to resolve the alias

Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)

(PORT=1521)))

OK (0 msec)

3.4 创建数据库

 [1] 登录数据库,并且输入以下的命令。

技术分享

 [2] Select "Create Database" and go next.

技术分享

[3] On this example, select "Advanced Mode" and go next.

技术分享

[4] This example selects "General   

技术分享      

[5] Set Grobal Database name and SID Purpose ***" and go next.  like follows. Input any one you like.

技术分享

[6] This example goes next with keeping  

技术分享 

[7] Set passwords. Please set a default.password for a user for security. 

技术分享

[8]配置监听. 

技术分享

[9]配置内存设置.

技术分享

[10] 配置简单的示例和脚本     

技术分享        

[11]配置 memory

技术分享

[12] 指定最大进程                     

技术分享

[13] 字符设置

技术分享

[14] 选择连接模式。如果您的服务器没有多客户端,请选择“专用服务器模式”。如果您的服务器有许多客户端,请选择“共享服务器”

技术分享

[15]继续

技术分享

[16]配置完成,选择“finish”

技术分享

[17] 数据库开始创建. 

技术分享

 [18] 点击关闭。

技术分享

[19] 添加SID到数据库

[oracle@dserver~]$ vi /etc/oratab

#更改如下

dlp:/u01/app/oracle/product/12.1.0/dbhome_1:Y

[oracle@server ~]$ vi ~/.bash_profile

# 结尾添加

export ORACLE_SID=dlp

3.5 使用企业管理器

使用企业管理器,它有可能在图像化界面管理数据库

[1]创建完成数据库之后,数据库服务是运行状态也有可能访问企业管理器。访问数据库创建完成时所显示的网址,然后显示登录表单,并有可能与数据库用户登录。

技术分享

[2]登录成功后,就可以开始管理了


3.6 创建Systemd file

为数据库服务创建系统目录。

[1] Login as root user and create Systemd files.

[root@server ~]# vi /etc/sysconfig/dlp.oracledb

# 创建新的:定义环境变量

ORACLE_BASE=/u01/app/oracle

ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1

ORACLE_SID=dlp

#配置监听服务

 [root@server ~]# vi /usr/lib/systemd/system/dlp@lsnrctl.service

# this is an example, modify for free

 [Unit]

Description=oracle net listener

After=network.target

 

[Service]

Type=forking

EnvironmentFile=/etc/sysconfig/dlp.oracledb

ExecStart=/u01/app/oracle/product/12.1.0/dbhome_1/bin/lsnrctl start

ExecStop=/u01/app/oracle/product/12.1.0/dbhome_1/bin/lsnrctl stop

User=oracle

 

[Install]

WantedBy=multi-user.target

 

# configure database service

[root@server ~]# vi /usr/lib/systemd/system/dlp@oracledb.service

# this is an example, modify for free

 [Unit]

Description=oracle net listener

After=network.target lsnrctl.service

 

[Service]

Type=forking

EnvironmentFile=/etc/sysconfig/dlp.oracledb

ExecStart=/u01/app/oracle/product/12.1.0/dbhome_1/bin/dbstart /u01/app/oracle/product/12.1.0/dbhome_1

ExecStop=/u01/app/oracle/product/12.1.0/dbhome_1/bin/dbshut /u01/app/oracle/product/12.1.0/dbhome_1

User=oracle

 

[Install]

WantedBy=multi-user.target

[root@server ~]# systemctl daemon-reload

[root@server ~]# systemctl enable dlp@lsnrctl dlp@oracledb

 


本文出自 “11830455” 博客,请务必保留此出处http://11840455.blog.51cto.com/11830455/1837510

Linux与云计算——第二阶段Linux服务器架设 第一十二章:数据库搭建—Oracle Database 12c

标签:oracle database 12c   oracle 12c   预需求   创建数据库   oracle net listener   使用企业管理器   

原文地址:http://11840455.blog.51cto.com/11830455/1837510

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!