Linux数据库Oracle数据库管理之道

centos安装Oracle11g数据库

2020-01-06  本文已影响0人  阿B咬佢只鸡

1、准备环境:

centos 7.5操作系统最小化安装;物理内存8GB,硬盘100G;安装目录:/oracle
安装包:注意根据系统,下载对应的包(32位,64位)
linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip

在/etc/hosts文件中增加主机名(通过hostname获得)到回环IP的映射如下:
192.168.31.162 oracle #本机IP 主机名

关闭selinux和防火墙

[root@oracle ~]# setenforce 0        #临时
[root@oracle ~]# sed -i "/SELINUX=/s/enforcing/disabled/" /etc/selinux/config      #永久关闭selinux
[root@oracle ~]# getenforce 
Disabled
[root@oracle ~]# systemctl stop firewalld
[root@oracle ~]# systemctl disable firewalld

2、安装依赖包:

[root@oracle ~]# yum -y install gcc make binutils gcc-c++
[root@oracle ~]#yum -y install compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static
[root@oracle ~]# yum -y install ksh libaio  libaio-devel  numactl-devel sysstat
[root@oracle ~]# yum -y install  unixODBC  unixODBC-devel  pcre-devel

3、解包:

[root@oracle ~]# cd /oracle/
[root@oracle oracle]# unzip linux.x64_11gR2_database_1of2.zip
[root@oracle oracle]# unzip linux.x64_11gR2_database_2of2.zip
注,解包后在该目录下会有一个database目录

4、准备安装用户及组:

[root@oracle oracle]# groupadd oinstall
[root@oracle oracle]# groupadd dba
[root@oracle oracle]# useradd -g oinstall -G dba -d /home/oracle oracle
[root@oracle oracle]# passwd oracle
[root@oracle oracle]# id oracle
uid=1000(oracle) gid=1000(oinstall) 组=1000(oinstall),1001(dba)

5、修改内核参数:

[root@oracle oracle]# vim /etc/sysctl.conf     添加
fs.aio-max-nr = 1048576
fs.file-max = 6553600
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586

[root@oracle oracle]# /sbin/sysctl –p      文件生效

6、修改用户限制文件:

[root@oracle oracle]# vim /etc/security/limits.conf     添加
oracle           soft    nproc           2047
oracle           hard    nproc           16384
oracle           soft    nofile          1024
oracle           hard    nofile          65536
oracle           soft    stack           10240

[root@oracle oracle]# vim /etc/pam.d/login      添加
session     required      /lib64/security/pam_limits.so    这里有个注意点,那个64指64位系统,不能省略
session     required      pam_limits.so

[root@oracle oracle]# vim /etc/profile    添加
if [ $USER = "oracle" ]; then
    if [ $SHELL = "/bin/ksh" ]; then
       ulimit -p 16384
       ulimit -n 65536
   else
      ulimit -u 16384 -n 65536
   fi
fi

7、手动创建安装文档及设置权限:

[root@oracle oracle]# mkdir /oracle/oracle
[root@oracle oracle]# mkdir /oracle/oracle/11.2.0       数据库系统安装目录
[root@oracle oracle]# mkdir /oracle/oradata            数据库数据安装目录
[root@oracle oracle]# mkdir /oracle/oradata_back       数据备份目录
[root@oracle oracle]# mkdir /home/oracle/inventory     清单目录
[root@oracle oracle]# chown -R oracle.oinstall /oracle/oracle
[root@oracle oracle]# chown -R oracle.oinstall  /oracle/oracle /home/oracle/
[root@oracle oracle]# chmod -R 775 /oracle/oracle

8、编辑静默安装文件(非图像界面):

[root@oracle oracle]# su - oracle
[oracle@oracle ~]$ cp -R /oracle/database/response/  /home/oracle/
[oracle@oracle ~]$ cd /home/oracle/response/
[oracle@oracle response]$ mv db_install.rsp db_install_swonly.rsp    因为下面的安装是只安装软件不安装启动数据库实例,所以改个名字以提示自己

[oracle@oracle response]$vim db_install_swonly.rsp
29 oracle.install.option=INSTALL_DB_SWONLY     ##3选1
37 ORACLE_HOSTNAME=oracle
42 UNIX_GROUP_NAME=oinstall
47 INVENTORY_LOCATION=/home/oracle/inventory
99 oracle.install.db.InstallEdition=EE
oracle.install.db.customComponents=oracle.server:11.2.0.1.0,         //保持系统默认值
oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,
oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,
oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,
oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,
oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,
oracle.rdbms.rat:11.2.0.1.0
142 oracle.install.db.DBA_GROUP=dba
147 oracle.install.db.OPER_GROUP=dba
385 DECLINE_SECURITY_UPDATES=true

9、根据响应文件安装oracle:

[oracle@oracle oracle]$ cd /oracle/database/
[oracle@oracle database]$ ./runInstaller -silent  -ignorePrereq -responseFile /home/oracle/response/db_install_swonly.rsp

如果报: ./runInstaller: /data/oracle/database/install/.oui: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录
解决方法:yum install -y ld-linux.so.2
注:安装过程中,如果提示[warning]不必理会,程序仍在安装,如果提示【fatal】,则安装停止。另开终端查看日志,查看(也可以查看安装进度)报错信息:tail –f /home/oracle/inventory/logs/installActions2018-11-04_11-16-12PM.log
当出现:Successfully Setup Software. 表示安装成功
Exit退出以root身份执行下面两个脚本初始化:

[root@oracle database]# cd /home/oracle/inventory/
[root@oracle inventory]# ./orainstRoot.sh      #注:重装oracle前,删除/etc/oraInst.loc文件,否则没有./orainstRoot.sh
[root@oracle inventory]# cd /oracle/oracle/11.2.0/
[root@oracle 11.2.0]# ./root.sh

10、编辑静默建库响应文件(建库):

[oracle@oracle ~]$  cd /home/oracle/response/
[oracle@oracle response]$ mv dbca.rsp  dbca_hello.rsp    实例名
[oracle@oracle ~]$ vim .bash_profile      设置用户变量,否测没有命令
export ORACLE_BASE=/oracle/oracle
export ORACLE_HOME=/oracle/oracle/11.2.0
export ORACLE_SID=hello
PATH=$PATH:$HOME/.local/bin:$HOME/bin:/oracle/oracle/11.2.0/bin/

[oracle@oracle ~]$ vim /home/oracle/response/dbca_hello.rsp     建库建实例
78 GDBNAME = "orcl11g"                                  数据库名字     ###192.168.1.201  yfpw
149 SID = "hello"                                         实例名                ###192.168.1.201  orcl
190 SYSPASSWORD = "password"                            管理员密码
200 SYSTEMPASSWORD = "password"                        管理员密码
357 DATAFILEDESTINATION = /oracle/oracle                    数据文件存放目录
367 RECOVERYAREADESTINATION= /oracle/oradata_back           数据备份目录   
415 CHARACTERSET = "ZHS16GBK"                           字符集,重要!!! 建库后一般不能更改,所以建库前要确定清楚。
###我司线上为:AMERICAN_AMERICA.AL32UTF8
540 TOTALMEMORY = "5120"                                 设置内存5120M

11、配置静默监听:

[oracle@oracle ~]$ netca  /silent /responsefile /home/oracle/response/netca.rsp  
正在对命令行参数进行语法分析:
参数"silent" = true
参数"responsefile" = /home/oracle/response/netca.rsp
完成对命令行参数进行语法分析。
Oracle Net Services 配置:
完成概要文件配置。
Oracle Net 监听程序启动:
正在运行监听程序控制:
/oracle/oracle/11.2.0/bin/lsnrctl start LISTENER
监听程序控制完成。
监听程序已成功启动。
监听程序配置完成。
成功完成 Oracle Net Services 配置。退出代码是0
成功运行后(退出代码是0),在/oracle/oracle/11.2.0/network/admin目录下生成sqlnet.ora和listener.ora两个文件,通过命令netstat –ntlp 可以看到服务端口1521,说明监听器已经在1521端口上开始工作了。

十二起库起实例:

[oracle@oracle admin]$ dbca -silent -responseFile /home/oracle/response/dbca_hello.rsp

复制数据库文件                                                                                       

1% 已完成                                                                                            

3% 已完成                                                                                            

11% 已完成                                                                                           

18% 已完成                                                                                           

26% 已完成                                                                                           

37% 已完成                                                                                           

正在创建并启动 Oracle 实例                                                                           

40% 已完成                                                                                           

45% 已完成                                                                                           

50% 已完成                                                                                           

55% 已完成                                                                                           

56% 已完成                                                                                           

60% 已完成                                                                                           

62% 已完成                                                                                           

正在进行数据库创建                                                                                   

66% 已完成

70% 已完成

73% 已完成

85% 已完成

96% 已完成

100% 已完成

有关详细信息, 请参阅日志文件 "/oracle/oracle/cfgtoollogs/dbca/orcl11g/orcl11g.log"。

13、配置监听TNS监听串(方便plsql等第三方软件管理):

[oracle@oracle ~]$ cd /oracle/oracle/11.2.0/network/admin/
[oracle@oracle admin]$ vim listener.ora     添加监听串
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = hello)   sid实例名
(ORACLE_HOME = /oracle/oracle/11.2.0)   家目录
  )
)        

[oracle@oracle admin]$ lsnrctl   status

Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)))
Services Summary...
Service "helloXDB" has 1 instance(s).
Instance "hello", status READY, has 1 handler(s) for this service...
Service "orcl11g" has 1 instance(s).
Instance "hello", status READY, has 1 handler(s) for this service...
The command completed successfully       即监听成功

[<u>https://www.cnblogs.com/softidea/p/3912369.html</u>](https://www.cnblogs.com/softidea/p/3912369.html)

14、进入数据库,默认无需密码:

[oracle@oracle admin]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Mon Nov 5 00:42:01 2018
Copyright (c) 1982, 2009, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL>

            SQL> shutdown immediate;      关闭实例

            SQL> startup                  开启实例

            SQL> exit                     退出

另附orecle结构图一张:


oracle.png

补充

su  -  oracle
sqlplus /nolog;    (sqlplus   用户名/密码;)
select table_name from user_tables; //当前用户的表      

1、su – oracle 不是必需,适合于没有DBA密码时使用,可以不用密码来进入sqlplus界面。
2、sqlplus /nolog 或sqlplus system/manager 或./sqlplus ;
3、SQL>connect / as sysdba ;(as sysoper)或
connect internal/oracle AS SYSDBA ;(scott/tiger)
conn sys/change_on_install as sysdba;
4、SQL>startup; 启动数据库实例
5、 查看当前的所有数据库: select * from v$database;
上一篇下一篇

猜你喜欢

热点阅读