Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。
实验目标:安装Oracle数据库--Oracle Database 11g
操作系统:CentOS6.9
安装需要的软件:
p13390677_112040_Linux-x86-64_1of7.zip
p13390677_112040_Linux-x86-64_2of7.zip
pdksh-5.2.14-30.x86_64.rpm
满足的条件:
1. yum 源
2. 保证网上的ip地址为静态
3. ip地址与主机名写入/etc/hosts
4. oracle安装包database解压并放置到/root下
Oracle数据库软件没有做好的rpm包,所以需要我们下载相关包,配置相关参数进行安装
下面是Oracle需要安装的依赖包,以及需要的参数等,都写在了脚本orainst_11g.sh里 ,注意:这个脚本只适用于oracle database 11g
[root@centos6 ~]# cat orainst_11g.sh
#!/bin/bash
PKG="
unixODBC
unixODBC-devel
binutils
compat-libstdc++-33
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
numactl-devel
sysstat
"
PACKINSTALL=
for PACKAGE in $PKG ;do
rpm -q $PACKAGE || PACKINSTALL="$PACKINSTALL $PACKAGE"
done
echo
if [ -z "$PACKINSTALL" ];then
true
else
echo "The followling packages will be install: $PACKINSTALL "
read -p "Continue? (y/N): " answer
case $answer in
([yY]|[Yy][Ee][Ss])
echo 1
yum -y install $PACKINSTALL ;;
(*);;
esac
fi
cat /etc/group |grep oinstall &> /dev/null || /usr/sbin/groupadd oinstall
cat /etc/group |grep dba &> /dev/null || /usr/sbin/groupadd dba
id oracle &> /dev/null
if [ $? = 0 ];then
groups oracle | grep dba &> /dev/null || /usr/sbin/usermod -g oinstall -G dba oracle
else
/usr/sbin/useradd -g oinstall -G dba oracle
echo oracle |passwd --stdin oracle
fi
KELNUM=$(cat /etc/sysctl.conf |grep -v ^# |grep -v ^$ |grep -E "fs.aio-max-nr|fs.file-max|kernel.shmall|kernel.shmmax|kernel.shmmni|kernel.sem|net.ipv4.ip_local_port_range|net.core.rmem_default|net.core.rmem_max|net.core.wmem_default|net.core.wmem_max" |awk '{print $1}' |sort -u |wc -l )
if [ $KELNUM -lt 11 ];then
cat >> /etc/sysctl.conf < /dev/null
if [ $? != 0 ];then
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 1024
EOF
fi
grep pam_limits.so /etc/pam.d/login &> /dev/null
if [ $? != 0 ];then
cat >> /etc/pam.d/login < /dev/null
if [ $? != 0 ];then
cat >> ~oracle/.bash_profile <
正式开始安装
下面几步操作在root下设置
1、配置yum源
vim /etc/yum.repos.d/base.repo
name=centos 6.9
baseurl=你的yum源地址
gpgcheck=0
enabled=1
2、配置静态ip地址
vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.1.116
PREFIX=24
GATEWAY=192.168.1.1
3、ip地址与主机名写入/etc/hosts
vim /etc/hosts
192.168.1.116 centos6.magedu.com
4、oracle安装包database解压并放置到/root下,因为脚本里写了database目录的位置
unzip p13390677_112040_Linux-x86-64_1of7.zip;unzip p13390677_112040_Linux-x86-64_2of7.zip
mv database /root
5、运行脚本,没有错误的话,会看到下图
./orainst_11g.sh
输入的账户密码需要购买Oraxle的服务,所以我们选择跳过
第一项是安装数据库软件并且配置数据库,如果想要快速便捷的安装配置数据库,可以选择这一项。
第二项仅安装数据库软件,数据库稍后配置,这可以让自己更加理解配置Oracle数据库的操作,所以,这里我们选择第二项。
第三项,更新存在的数据库,因为还没有数据库,忽略这一项
选完之后,接着点击"Next"
单实例模式下,一个数据库只能通过一个实例进行访问,RAC(Real Application Clusters)集群模式下,共享数据库文件,一个数据库生成多个相同的实例被用户访问。这里我们刚入门,只需要选择第一项,单实例即可。
将简体中文加到右边,以便能将数据库里的中文显示出来
保持默认,选择企业版
这两个选项和我们设置的环境变量有关,安装时自动读取,如果确认无误的话,点击下一步
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=\$ORACLE_BASE/11.2.0/db_1
保持默认,点下一步
现在开始进行安装前的检测,如果有错误,需要修改参数
检测出问题,修改kernel shmmax参数
vim /etc/sysctl.conf
kernel.shmmax = 1043634176 按检测要求修改这一行的值
sysctl -p 使参数生效
此时再点击"Check Again",再次进行检测
检测出缺少pdksh-5.2.14(ksh的插件包),这个软件包Linux安装光盘中没有提供,需要自己下载
直接rpm方式安装这个包,如果出现如下错误:
warning: pdksh-5.2.14-30.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 73307de6: NOKEY
error: Failed dependencies:
pdksh conflicts with ksh-20120801-33.el6.x86_64#和ksh出现冲突
就先将ksh先卸载掉,再安装一次
rpm -e ksh
rpm -ivh pdksh-5.2.14-30.x86_64.rpm
安装完pdksh-5.2.14之后,再点击"Check Again",下图代表检测通过,安装前的准备工作结束,点击"Install"进行安装
下图代表正在安装Oracle数据库软件
有一些需要root权限才能做,所以需要执行下面两个脚本,注意:要在root用户下
另外开启一个终端,执行下面的命令
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/11.2.0/db_1/root.sh
下图代表安装完成
数据库软件安装完成,下一步安装数据库
打开一个新的终端
xhost +
su - oracle #切换到oracle用户
dbca #打开数据库配置助手
数据库配置助手DCA可以进行创建,配置数据库
因为没有存在的数据库,所以只能创建数据库,下面两项不能选择
要开启Configure Enterprise Manager,需要打开1521监听端口
在oracle用户下,执行lsnrctl start命令即可
否则会提示如下界面
设置Oracle数据库各用户密码,可以设置为不同的密码,这里我们为了方便记忆,选择所有用户设置相同的密码
oracle占内存大小,按机器的实际情况设置,这里默认
这里选择创建一个数据库
下图显示的内容是刚才我们所做的所有操作的一个概述,可以看一下是否有错误,无误的话选择"OK"
正式开始安装一个数据库
数据库安装完成,点击"Exit"
好了,到这里Oracle数据库就安装成功了!!
下面我们来测试一下,看数据库是否能打开
su - oracle #切换到oracle用户
sqlplus / as sysdba #本地系统认证,不用输入密码,以sysdba用户登录
下图代表成功登录