101库:32g内存 grep SwapTotal /proc/meminfo SwapTotal: 5242876 kB 注意设置swap 100库是设置的16g和内存同样大linux
1.修改用户的SHELL的限制 ,设置oracle软硬件进程数
vim /etc/security/limits.conf
oracle soft nproc 4096
oracle hard nproc 65536
oracle soft nofile 4096
oracle hard nofile 65536c++
2.添加初始化参数 vim /etc/sysctl.conf
# Controls the maximum size of a message, in bytes
kernel.msgmax = 65536数据库
# Controls the maximum shared segment size, in bytes
kernel.shmmax = 68719476736vim
# Controls the maximum number of shared memory segments, in pages
kernel.shmall = 4294967296
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576centos
要使 /etc/sysctl.conf 更改当即生效,执行如下命令。 输入:sysctl -p 安全
3.关闭强制访问控制,避免路由访问失败---可设置 或者不设置。建议设置禁用需重启服务器 reboot 101 库设置了以下:
vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled ---就这个东西
# SELINUXTYPE= can take one of these two values:
# targeted - Targeted processes are protected,
# mls - Multi Level Security protection.
SELINUXTYPE=targetedbash
4.配置计算机名称 101以下 app-01 是他的名称
vi /etc/hosts
10.1.1.1 app-01服务器
5.全局进程,线程配置 末尾追加
vi /etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fisession
6.设置oracle用户环境变量 101配置以下 只须要配置以下就行
su - oracle
vi .bash_profile并发
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/dbhome_1
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export ORACLE_SID=oracle
让其生效
. ./.bash_profile
检验是否设置成功
echo $ORACLE_HOME
7.vi /etc/pam.d/login 101该配置文件以下 网上也有没配的 关键是session required /lib/security/pam_limits.so session required pam_limits.so须要增长 101 64位系统
直接配置
session required /lib/security/pam_limits.so
session required pam_limits.so
网上:
1.修改用户的SHELL的限制
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
2.--修改/etc/pam.d/login文件,增长以下:
session required /lib64/security/pam_limits.so //64为系统,千万别写成/lib/security/pam_limits.so,不然致使没法登陆
session required pam_limits.so
3.修改linux内核,修改/etc/sysctl.conf文件,输入命令: vi /etc/sysctl.conf,按i键进入编辑模式,将下列内容加入该文件
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648 共享内存字节,通常为最大内存的75%
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
要使 /etc/sysctl.conf 更改当即生效,执行如下命令。 输入:sysctl -p
3.关闭强制访问控制,避免路由访问失败---可设置 或者不设置。
vi /etc/selinux/config
-----------------------
SELINUX=disabled
4.修改主机名,及ip对应关系
--设置主机名,也能够直接修改配置文件/etc/sysconfig/network,不过这个是重启以后才起做用
#sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=DB_2/g" /etc/sysconfig/network
--若是不想重启,则使用下面命令,使当前生效
#hostname DB_2
--添加主机名与IP对应记录
#vi /etc/hosts
10.10.0.48 DB_2
5.全局进程,线程配置,也有同101同样配置的。
vi /etc/profile
----------------------
if [$USER = 'oracle']; then
ulimit -u 16384
ulimit -n 65536
fi
6.设置oracle用户环境变量
su - oracle
vi .bash_profile
----------------------
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2/db_1
export ORACLE_SID=oracle11g
export NLS_LANG=american_america.zhs16gbk
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask 022
----------------------
让其生效
. ./.bash_profile
检验是否设置成功
echo $ORACLE_HOME
-------------------------------------公共
必备依赖包
检查是否安装
rpm -q binutils compat-libstdc++ elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel
执行yum安装
yum install binutils compat-libstdc++ elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel
1.建立oracle用户
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
各参数详解:
kernel.shmmax:是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的太低可能会致使须要建立多个共享内存段,这样可能致使系统性能的降低。至于致使系统降低的主要缘由为在实例启动以及ServerProcess建立的时候,多个小的共享内存段可能会致使当时轻微的系统性能的下降(在启动的时候须要去建立多个虚拟地址段,在进程建立的时候要让进程对多个段进行“识别”,会有一些影响),可是其余时候都不会有影响。
官方建议值:
32位linux系统:可取最大值为4GB(4294967296bytes)-1byte,即4294967295。建议值为多于内存的一半,因此若是是32为系统,通常可取值为4294967295。32位系统对SGA大小有限制,因此SGA确定能够包含在单个共享内存段中。
64位linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,通常取值大于SGA_MAX_SIZE便可,能够取物理内存-1byte。例如,若是为12GB物理内存,可取12*1024*1024*1024-1=12884901887,SGA确定会包含在单个共享内存段中。
kernel.shmall: 该参数控制可使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么须要共享内存页数是16GB/4KB=16777216KB /4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304才符合要求(几乎是原来设置2097152的两倍)。这时能够将shmmax参数调整到16G了,同时能够修改SGA_MAX_SIZE和SGA_TARGET为12G(您想设置的SGA最大大小,固然也能够是2G~14G等,还要协调PGA参数及OS等其余内存使用,不能设置太满,好比16G)
kernel.shmmni:该参数是共享内存段的最大数量。shmmni缺省值4096,通常确定是够用了。
fs.file-max:该参数决定了系统中所容许的文件句柄最大数目,文件句柄设置表明linux系统中能够打开的文件的数量。
fs.aio-max-nr:此参数限制并发未完成的请求,应该设置避免I/O子系统故障。推荐值是:1048576 其实它等于 1024*1024 也就是 1024K 个。
kernel.sem:以kernel.sem = 250 32000 100 128为例:
250是参数semmsl的值,表示一个信号量集合中可以包含的信号量最大数目。
32000是参数semmns的值,表示系统内可容许的信号量最大数目。
100是参数semopm的值,表示单个semopm()调用在一个信号量集合上能够执行的操做数量。
128是参数semmni的值,表示系统信号量集合总数。
net.ipv4.ip_local_port_range:表示应用程序可以使用的IPv4端口范围。
net.core.rmem_default:表示套接字接收缓冲区大小的缺省值。
net.core.rmem_max:表示套接字接收缓冲区大小的最大值。
net.core.wmem_default:表示套接字发送缓冲区大小的缺省值。
net.core.wmem_max:表示套接字发送缓冲区大小的最大值。
Oracle服务器上Swap的配置
在Oracle服务器上,设置合适的swap大小能够提高Oracle的性能,对于Oracle 11g来讲,Oracle服务器上物理内存和要设置的swap大小关系以下:
若是物理内存小于等于2GB,那么swap应该是物理内存的1.5倍;
若是物理内存在2GB到16GB之间,那么swap大小最好等于物理内存;
若是物理内存大于16GB,那么swap设置为16G就足够了。
咱们能够用操做系统命令free -m来查看物理内存、swap大小,单位是MB
以前都是配置系统变量
建立安装oracle和放解压包的文件夹
命令:sudo mkdir -p /oracledata/data/oracle //oracle数据库安装目录
命令:sudo mkdir -p /oracledata/data/oraInventory //oracle数据库配置文件目录
命令:sudo mkdir -p /oracledata/data/database //oracle数据库软件包解压目录 , 将oracle安装文件放到这里
建完记得给oracle用户赋权,名称随意跟后面配置文件匹配上就行。
下面开始安装数据库。
1.编辑响应文件db_install.rsp
vi /u01/database/response/db_install.rsp
须要修改的配置有如下内容(参考大神说明 http://blog.csdn.net/jameshadoop/article/details/48086933)
oracle.install.option=INSTALL_DB_SWONLY #选择安装类型:1.只装数据库软件 2.安装数据库软件并建库 3.升级数据库 ORACLE_HOSTNAME=ora11g #指定操做系统主机名,经过hostname命令得到 UNIX_GROUP_NAME=oinstall #指定oracle inventory目录的全部者,一般会是oinstall或者dba INVENTORY_LOCATION=/oracleSoft/data/oraInventory #指定产品清单oracle inventory目录的路径 SELECTED_LANGUAGES=en,zh_CN,zh_TW #指定数据库语言,能够选择多个,用逗号隔开 ORACLE_HOME=/oracleSoft/data/oracleInstall /product/11.2.0/db_1 #设置ORALCE_HOME的路径 ORACLE_BASE=/oracleSoft/data/oracleInstall # 设置ORALCE_BASE的路径,即oracle安装目录根路径 oracle.install.db.InstallEdition=EE #选择Oracle安装数据库软件的版本 oracle.install.db.isCustomInstall=false oracle.install.db.DBA_GROUP=dba #指定拥有OSDBA、OSOPER权限的用户组,一般会是dba组 oracle.install.db.OPER_GROUP=oinstall oracle.install.db.config.starterdb.type=GENERAL_PURPOSE #选择数据库的用途,通常用途/事物处理,数据仓库 oracle.install.db.config.starterdb.globalDBName=ora11g #指定GlobalName oracle.install.db.config.starterdb.SID=ora11g #指定SID oracle.install.db.config.starterdb.characterSet=ZHS16GBK #选择字符集。不正确的字符集会给数据显示和存储带来麻烦无数。 #一般中文选择的有ZHS16GBK简体中文库,根据公司规定自行选择 oracle.install.db.config.starterdb.password.ALL=123456 #设定全部数据库用户使用同一个密码,其它数据库用户就不用单独设置了。 这里能够不配置 使用默认的就行 DECLINE_SECURITY_UPDATES=true # False表示不须要设置安全更新,注意,在11.2的静默安装中疑似有一个BUG # Response File中必须指定为true,不然会提示错误,不论是否正确填写了邮件地址
2.切换到oracle用户进入到/u01/database目录下执行安装命令--
cd /oracle/data/database/ ./runInstaller -silent -ignorePrereq -responseFile /oracle/data/database/response/db_install.rsp
出现以下就证实成功,使用root用户执行对应的脚本便可。
检查临时空间: 必须大于 120 MB。 实际为 37565 MB 经过 检查交换空间: 必须大于 150 MB。 实际为 3956 MB 经过 准备从如下地址启动 Oracle Universal Installer /tmp/OraInstall2019-03-19_04-37-59PM. 请稍候...[oracle@asdccentos7 database]$ 能够在如下位置找到本次安装会话的日志: /home/oracleSoft/data/oraInventory/logs/installActions2019-03-19_04-37-59PM.log Oracle Database 11g 的 安装 已成功。 请查看 '/home/oracleSoft/data/oraInventory/logs/silentInstall2019-03-19_04-37-59PM.log' 以获取详细资料。 以 root 用户的身份执行如下脚本: 1. /home/oracleSoft/data/oraInventory/orainstRoot.sh 2. /home/oracleSoft/data/oracleInstall/product/11.2.0.4/dbhome_1/root.sh Successfully Setup Software.
ctrl+c oracle安装完成。
3.静默安装监听,( $ORACLE_HOME/bin/netca /silent /responsefile u01/database/response/netca.rsp)
[oracle@ddddd database]$ /home/oracleSoft/data/oracleInstall/product/11.2.0.4/dbhome_1/bin/netca /silent /responseFile /home/oracleSoft/data/database/database/response/netca.rsp
4.静默建库
编辑dbca.rsp
vim /home/oracleSoft/data/database/response/dbca.rsp
#如下内容必须设置 GDBNAME = "ora11g" 全局数据库名 SID = "ora11g" 实例名称 TEMPLATENAME = "General_Purpose.dbc" 默认若是是这个值 则不须要修改 #如下内容根据须要修改 CHARACTERSET = "ZHS16GBK" 若是注释了放开注释 ,填写须要的数据库字符集。通常中文推荐这个 End of CREATEDATABASE section出现这个说明就能够保存退出了
执行 [oracle@cccccc response]$ /home/oracleSoft/data/oracleInstall/product/11.2.0.4/dbhome_1/bin/dbca -silent -responseFile /home/oracleSoft/data/database/database/response/dbca.rsp
而后会提示输入system密码。个人电脑执行后会清空屏幕,直接输入想要的密码 回车,确认密码 一直回车就行。
注意环境变量的值必须和配置文件里一致。
最后提示100%时就成功了。
centos 开放端口
firewall-cmd --zone=public --add-port=1521/tcp --permanent
从新启动防火墙
firewall-cmd --reload
便可远程链接。