安装数据库
1.解压
unzip p13390677_112040_Linux-x86-64_1of7.zip
unzip p13390677_112040_Linux-x86-64_2of7.zip
解压2个软件包到当前目录database
,用于安装单机模式
2.关停服务
systemctl disable iptables.service
systemctl disable ip6tables.service
systemctl stop firewalld
systemctl disable firewalld
systemctl disable cups.service
systemctl disable firstboot.service
systemctl disable wpa_supplicant.service
systemctl disable postfix.service
3.安装依赖包
yum install -y binutils
yum install -y compat-libcap1
yum install -y compat-libstdc++-33
yum install -y glibc
yum install -y glibc-devel
yum install -y ksh
yum install -y libaio
yum install -y libaio-devel
yum install -y libX11
yum install -y libXau
yum install -y libXi
yum install -y libXtst
yum install -y libgcc
yum install -y libstdc++
yum install -y libstdc++-devel
yum install -y libxcb
yum install -y make
yum install -y nfs-utils
yum install -y net-tools
yum install -y smartmontools
yum install -y sysstat
yum install -y unixODBC
yum install -y unixODBC-devel
yum install -y gcc
yum install -y gcc-c++
yum install -y libXext
yum install -y zlib-devel
4.配置内核参数
cat >> /etc/sysctl.conf <<EOF
##oracle_install
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 3217549
kernel.shmmax = 16473853952
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
EOF
5.添加ulimit限制
cat >> /etc/security/limits.conf <<EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 10240
EOF
6.添加组及用户
groupadd dba
useradd -g dba -G dba oracle
passwd oracle
7.设置环境变量
# vi /home/oracle/.bashrc
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4
export ORACLE_SID=yejf
export ORACLE_OWNER=oracle
export PATH=/usr/sbin:$ORACLE_HOME/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
export NLS_LANG=american_america.ZHS16GB
8.创建目录及授权
mkdir -p /oracle/product/11.2.0.4
mkdir -p /oradata/
mkdir -p /oraarch/
chown -R oracle:dba /oracle
chmod -R 775 /oracle
chown -R oracle:dba /oradata
chmod -R 775 /oradata
9.重启服务器
reboot
10.编辑应答文件
cat > /home/oracle/db_install.rsp<<EOF
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=oracle
UNIX_GROUP_NAME=dba
INVENTORY_LOCATION=/oracle/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/oracle/product/11.2.0.4
ORACLE_BASE=/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.EEOptionsSelection=false
oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
oracle.install.db.CLUSTER_NODES=
oracle.install.db.isRACOneInstall=
oracle.install.db.racOneServiceName=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=tencentdb
oracle.install.db.config.starterdb.SID=tencentdb
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=oracle
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
COLLECTOR_SUPPORTHUB_URL=
oracle.installer.autoupdates.option=
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
EOF
11.安装数据库
[oracle@oracle database]$ /usr/local/database/runInstaller -silent -responseFile /home/oracle/db_install.rsp
正在启动 Oracle Universal Installer...
检查临时空间: 必须大于 120 MB。 实际为 45060 MB 通过
检查交换空间: 必须大于 150 MB。 实际为 2047 MB 通过
准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2020-04-21_05-08-35PM. 请稍候...
[WARNING] [INS-32055] 主产品清单位于 Oracle 基目录中。
原因: 主产品清单位于 Oracle 基目录中。
操作: Oracle 建议将此主产品清单放置在 Oracle 基目录之外的位置中。
[WARNING] [INS-13014] 目标环境不满足一些可选要求。
原因: 不满足一些可选的先决条件。有关详细信息, 请查看日志。/tmp/OraInstall2020-04-21_05-08-35PM/installActions2020-04-21_05-08-35PM.log
操作: 从日志 /tmp/OraInstall2020-04-21_05-08-35PM/installActions2020-04-21_05-08-35PM.log 中确定失败的先决条件检查列表。然后, 从日志文件或安装手册中查找满足这些先决条件的适当配置, 并手动进行修复。
可以在以下位置找到本次安装会话的日志:
/oracle/app/oraInventory/logs/installActions2020-04-21_05-08-35PM.log
Oracle Database 11g 的 安装 已成功。
请查看 '/oracle/app/oraInventory/logs/silentInstall2020-04-21_05-08-35PM.log' 以获取详细资料。
以 root 用户的身份执行以下脚本:
1. /oracle/app/oraInventory/orainstRoot.sh
2. /oracle/product/11.2.0.4/root.sh
Successfully Setup Software.
12.运行生成的shell脚本
[root@oracle database]# sh /oracle/app/oraInventory/orainstRoot.sh
更改权限/oracle/app/oraInventory.
添加组的读取和写入权限。
删除全局的读取, 写入和执行权限。
更改组名/oracle/app/oraInventory 到 dba.
脚本的执行已完成。
[root@oracle database]# sh /oracle/product/11.2.0.4/root.sh
Check /oracle/product/11.2.0.4/install/root_oracle_2020-04-21_17-17-04.log for the output of root script
13.配置监听
[oracle@oracle ~]$ netca -silent -responseFile /usr/local/database/response/netca.rsp
正在对命令行参数进行语法分析:
参数"silent" = true
参数"responsefile" = /usr/local/database/response/netca.rsp
完成对命令行参数进行语法分析。
Oracle Net Services 配置:
完成概要文件配置。
Oracle Net 监听程序启动:
正在运行监听程序控制:
/oracle/product/11.2.0.4/bin/lsnrctl start LISTENER
监听程序控制完成。
监听程序已成功启动。
监听程序配置完成。
成功完成 Oracle Net Services 配置。退出代码是0
14.创建数据库
14.1创建数据目录
[root@oracle local]# mkdir -p /data/oradata
[root@oracle local]# chown -R oracle:dba /data/oradata
14.2配置文件
cat > /home/oracle/dbca.rsp<<EOF
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "yejf"
SID = "yejf"
TEMPLATENAME = "General_Purpose.dbc"
STORAGETYPE=FS
DATAFILEDESTINATION =/data/oradata
RECOVERYAREADESTINATION=/oracle/app/flash_recovery_area
CHARACTERSET = "ZHS16GBK"
NATIONALCHARACTERSET= "AL16UTF16"
LISTENERS=LISTENER
TOTALMEMORY = "2048"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
EOF
14.3执行创建命令
[oracle@oracle ~]$ dbca -silent -responseFile /home/oracle/dbca.rsp
复制数据库文件
1% 已完成
3% 已完成
11% 已完成
18% 已完成
26% 已完成
37% 已完成
正在创建并启动 Oracle 实例
40% 已完成
45% 已完成
50% 已完成
55% 已完成
56% 已完成
57% 已完成
60% 已完成
62% 已完成
正在进行数据库创建
66% 已完成
70% 已完成
73% 已完成
74% 已完成
85% 已完成
86% 已完成
98% 已完成
100% 已完成
有关详细信息, 请参阅日志文件 "/oracle/cfgtoollogs/dbca/yejf/yejf.log"。
15.查看实例状态
[oracle@oracle ~]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 21-APR-2020 17:33:45
Copyright (c) 1991, 2013, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date 21-APR-2020 17:23:59
Uptime 0 days 0 hr. 9 min. 51 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oracle/product/11.2.0.4/network/admin/listener.ora
Listener Log File /oracle/diag/tnslsnr/oracle/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521)))
Services Summary...
Service "yejf" has 1 instance(s).
Instance "yejf", status RESTRICTED, has 1 handler(s) for this service...
Service "yejfXDB" has 1 instance(s).
Instance "yejf", status RESTRICTED, has 1 handler(s) for this service...
The command completed successfully
16.以管理员身份登陆
[oracle@oracle ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Tue Apr 21 17:36:23 2020
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL>
内存调整
查看当前内存
SQL> show parameter sga;
NAME TYPE VALUE
--------------------- ------------------------- -------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 392M
sga_target big integer 0
创建spfile
SQL> create spfile from pfile;
File created.
重启生效
shutdown immediate;
startup;
查看spfile
SQL> show parameter spfile;
NAME TYPE VALUE
------------------ ---------- ---------------------------
spfile string /oracle/product/11.2.0.4/dbs/spfileyejf.ora
查看shm,最大内存只能设置到911M,如果需要调高,需要增大/dev/shm
[root@oracle dbs]# df -h /dev/shm
文件系统 容量 已用 可用 已用% 挂载点
tmpfs 911M 207M 705M 23% /dev/shm
修改内存命令
alter system set memory_target=900M scope=spfile;
alter system set sga_max_size=600M scope=spfile;
alter system set pga_aggregate_target=100M scope=both;
再次查看当前内存
SQL> show parameter sga;
NAME TYPE VALUE
------------------------------------ --------------------------------- -----------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 600M
sga_target big integer 0
关闭审计日志
查看当前审计日志级别
SQL> show parameter aud
NAME TYPE VALUE
------------------------------------ --------------------------------- -----------------
audit_trail string DB
关闭命令
alter system set audit_trail=none scope=spfile;
#重启生效
修改日志组文件大小及添加日志组数
查看日志文件信息
select A.GROUP#,A.BYTES/1024/1024 AS MB,a.status,B.MEMBER AS LOGFILE
from v$log a
join v$logfile b on a.GROUP#=b.GROUP#
3 50 CURRENT /data/oradata/yejf/redo03.log
2 50 INACTIVE /data/oradata/yejf/redo02.log
1 50 INACTIVE /data/oradata/yejf/redo01.log
日志文件默认为50M大小,且只有3组,建议增加至6组,且每组日志文件大小2G
alter database add logfile group 4 ('/data/oradata/yejf/redo04.log') size 2048M;
alter database add logfile group 5 ('/data/oradata/yejf/redo05.log') size 2048M;
alter database add logfile group 6 ('/data/oradata/yejf/redo06.log') size 2048M;
该语句执行3次直至v$log视图中显示CURRENT状态的日志文件组已经在新增的第4组
alter system switch logfile;
以上在线日志文件组切换后,1,2,3组日志文件将仍处于ACTIVE状态,需要设置检查点触发写日志使该3组日志为INACTIVE状态
alter system checkpoint;
删除旧的3组较小的日志文件组,并且于操作系统中将对应的物理日志文件删除
alter database drop logfile group 1;
alter database drop logfile group 2;
alter database drop logfile group 3;
以下语句添加新的3组日志文件
alter database add logfile group 1 ('/data/oradata/yejf/redo01.log') size 2048M;
alter database add logfile group 2 ('/data/oradata/yejf/redo02.log') size 2048M;
alter database add logfile group 3 ('/data/oradata/yejf/redo03.log') size 2048M;
创建表空间及用户
create tablespace yejf_space datafile '/data/oradata/yejf/yejf_space01.dbf' size 1000M autoextend on;
查看表空间信息
select * from dba_data_files
创建用户并指定表空间
create user yejf
identified by yejf
default tablespace yejf_space;
为用户创建会话权限
grant create session to yejf;
配置客户端连接
客户端添加tns配置
YEJF =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.43.170)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = yejf)
)
)
使用用户yejf登陆ORACLE数据库
[oracle@oracle yejf]$ sqlplus yejf/yejf@yejf
SQL*Plus: Release 11.2.0.4.0 Production on Wed Apr 22 11:42:43 2020
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> show user;
USER is "YEJF"
文章转载自叶同学专栏,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




