Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系型数据库管理系统。它是在数据库领域一直处于领先地位的产品。能够说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各种大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。html
环境配置linux
一、安装centos6.5操做系统c++
物理内存很多于1Gsql
硬盘能够空间很多于5G数据库
swap分区空间很多于2Gvim
支持256色以上显卡centos
cpu主频不小于550mHZ安全
二、下载安装包oracle11g_r2_x64的oracle版本服务器
三、配置hosts文件
格式:ip 主机名
四、配置yum源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
rpm -Uvh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum clean all && yum makecache
五、关闭selinux
sed -i 7s/enforcing/disabled/g /etc/selinux/config
reboot
安装部署
一、安装oracle依赖包关系
yum install binutils compat-libcap1 compat-libstdc++ compat-libstdc++ gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libaio libaio-devel make sysstat unixODBC unixODBC-devel -y
二、修改内核参数
内核参数调总体如今/etc/sysctl.conf文件中。主要包括对内存调度、端口范围、打开文件数、I/O请求等相关的一些设置,相关数值不可低于安装要求。修改完毕后经过执行sysctl–p命令使新配置当即生效。
vim /etc/sysctl.conf 请根据本身实际状况修改,内核参数以下
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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
三、修改内核限制参数
vim /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
第1行是设置进程数软限制;
第2行是设置进程数硬限制;
第3行是设置文件数软限制;
第4行是设置文件数硬限制
四、建立oracle账号和组
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
五、建立相关数据库目录
mkdir /u01
mkdir /u01/app
mkdir -p /u01/app/oracle/oradata //存放数据库的数据目录
mkdir -p /u01/app/oracle/oradata_back //存放数据库备份文件
chmod -R 775 /u01/app
六、修改oracle环境变量
vim /etc/proile (文件最后加入)
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=ora11
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
七、oracle资源限制,不配置也不会影响oracle数据库的成功安装,可是考虑到如有糟糕的sql语句对服务器资源的无限占用,致使长时间对用户请求无响应,建议提早限制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
八、解压oracle二进制包至/opt目录下 (解压的目录默认名为database)
cp -rv /root/linux.x86* /opt
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
9、修改配置文件并进行拷贝
解压oracle文件,进入response目录下
#cp * /etc
#vi /etc/db_install.rsp
配置文件设置--->http://blog.chinaunix.net/uid-23886490-id-3565908.html
修改安装Oracle软件的响应文件vim /etc/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY //安装类型,只装数据库软件
ORACLE_HOSTNAME=test //主机名称(hostname查询)
UNIX_GROUP_NAME=oinstall // 安装组
INVENTORY_LOCATION=/opt/oracle/oraInventory //INVENTORY目录(不填就是默认值)
SELECTED_LANGUAGES=en,zh_CN,zh_TW // 选择语言
ORACLE_HOME=/opt/oracle/product/11.2.0/db_1 // oracle_home
ORACLE_BASE=/opt/oracle // oracle_base
oracle.install.db.InstallEdition=EE // oracle版本
oracle.install.db.isCustomInstall=false //自定义安装,否,使用默认组件
oracle.install.db.DBA_GROUP=dba //dba用户组
oracle.install.db.OPER_GROUP=oinstall //oper用户组
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl //globalDBName
oracle.install.db.config.starterdb.SID=orcl //SID
oracle.install.db.config.starterdb.memoryLimit=81920 //自动管理内存的内存(M)
oracle.install.db.config.starterdb.password.ALL=oracle //设定全部数据库用户使用同一个密码
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false(手动写了false)
DECLINE_SECURITY_UPDATES=true //设置安全更新(貌似是有bug,这个必定要选true,不然会无限提醒邮件地址有问题,终止安装。PS:无论地址对不对)
10,执行脚本 提醒:切换至oracle用户
#/u01/app/oracle/oraInventory/orainstRoot.sh
#/u01/app/oracle/product/11.2.0/db_1/root.sh
11,静默配置监听 提醒:切换至oracle用户
netca /silent /responsefile /etc/netca.rsp
备注: netca命令是oracle提供的命令,若是显示找不到命令请检查环境变量
12,经过netstat -tlnp 命令查看监听地址 提醒:切换至oracle用户
tcp 0 0 :::1521 :::* LISTEN 5477/tnslsnr
13,静默创建新库 提醒:切换至oracle用户 (若是一下各参数在/etc/dbca.rsp文件中 重复出现,能够全改)
修改/etc/dbca.rsp,设置以下:
RESPONSEFILE_VERSION = "11.2.0" //不能更改
OPERATION_TYPE = "createDatabase"
GDBNAME = "orcl" //全局数据库的名字=SID+主机域名
SID = "orcl" //对应的实例名字
TEMPLATENAME = "General_Purpose.dbc" //建库用的模板文件
SYSPASSWORD = "123456" //SYS管理员密码
SYSTEMPASSWORD = "123456" //SYSTEM管理员密码
DATAFILEDESTINATION = /u01/app/oracle/oradata //数据文件存放目录
RECOVERYAREADESTINATION=/u01/app/oracle/oradata_back //恢复数据存放目录
CHARACTERSET = "UTF-8" //字符集,重要!!! 建库后通常不能更改
TOTALMEMORY = "5120" //oracle内存5120MB
14,静默建库命令以下 (dbca是oracle命令,若是提示命令找不到,检查环境变量)
dbca -silent -responseFile /etc/dbca.rsp
数据库信息:
全局数据库名:
系统标识符 (SID): 若有相关显示 则代表成功
15,检查oracle进程状态
ps -ef | grep ora_ | grep -v grep
lsnrctl status (lsnrctl是oracle命令)
16,登陆数据库 提醒:切换至oracle用户
sqlplus / as sysdba
17,修改oracle启动配置文件
完成oracle11g数据库的安装后,相关服务器会自动启用,但并不表示下次开机后oracle服务器仍然可用。下面将介绍oracle的基本服务组件,以及如何编写服务脚原本控制oracle数据库系统的自动运行。
根据上面的安装过程,oracle11g的数据库软件将安装在变量ORACLE_HOME所北定的位置。例如/opt/oracle/product/11.2.0/dbhome_1/,而各类服务器组件程序(也包括sqlplus命令)正是位于其中的bin子目录下。
Oracle11g数据库的基本服务组件以下所述:(注:oracle服务组件最好以oracle用户身份运行如:su - oracle)
lsnrctl:监听器程序,用来提供数据库访问,默认监听TCP 1521端口。
dbstart、dbshut:数据库控制程序,用来启动、中止数据库实例。
emctl:管理器控制工具,用来控制OEM平台的开启与关闭,OEM平台经过1158端口提供HTTPS访问,5520端口提供TCP访问。
为了方便执行oracle11g的服务组件程序,建议对全部用户的环境配置做进一步的优化调整、补充PATH路径、oracle终端类型等变量设置。除此之外,还应该修改/etc/oratab配置文件,以便运行dbstart时自动启用数据库实例。
$vim /etc/oratab
racl:/u01/app/oracle/product/11.2.0/db_1:Y //把“N”改为“Y”
这样就能够经过dbstart 启动此实例,也能够经过dbshut关闭此实例了。
$ dbshut /u01/app/oracle/product/11.2.0/db_1/
Processing Database instance "hello": log file /u01/app/oracle/product/11.2.0/db_1/shutdown.log
此时全部oracle的进程关闭,监听器也中止。
$dbstart /u01/app/oracle/product/11.2.0/db_1/
Processing Database instance "hello": log file /u01/app/oracle/product/11.2.0/db_1/startup.log
此时监听器工做,hello实例运行,再次查看监听器状态。