上传的时候如果出现permission is not allowed的错误,则是对文件夹的操作权限不足,我们就要修改文件夹权限,例如home文件夹,如下:
sudo chmod 777 home
这样就可以上传了,通过下边的命令进行解压:
cd /home
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
sudo yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686libstdc++-devel make sysstat unixODBC unixODBC-devel
创建oinstall组和dba组,把oracle用户加入到用户组,并设置oracle登录密码
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
sudo vim /etc/sysctl.conf
# 在文件底部添加以下的内容
fs.file-max= 6815744
fs.aio-max-nr=1048576
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
kernel.sem= 250 32000 100 128
# 执行命令sysctl使其自检并生效
sudo sysctl -p
sudo vim /etc/security/limits.conf
# 在文件底部添加以下的内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
vim /etc/pam.d/login
# 在文件底部添加以下的内容
session required /lib64/security/pam_limits.so
session required pam_limits.so
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
# 刷新配置
source /etc/profile
mkdir /usr/local/oracle # oracle是数据库系统安装目录,
mkdir /usr/local/oradata # oradata是数据库数据安装目录,
mkdir /usr/local/oradata_back # oradata_back是数据备份目录,
mkdir /usr/local/oraInventory # oraInventory是清单目录
chown -R oracle:oinstall /usr/local/oracle /usr/local/oraInventory /usr/local/oradata/
chmod -R 775 /usr/local/oracle /usr/local/oraInventory /usr/local/oradata/
vim /home/oracle/.bash_profile
# 在文件底部追加以下内容
export ORACLE_BASE=/usr/local/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
# 保存退出,刷新配置
source .bash_profile
执行这个source命令的时候提示权限不足,就要看看/home/oracle的权限了,执行下边的授权,然后再执行source命令即可。
sudo chmod 755 /home/oracle
source /home/oracle/.bash_profile
切换到 oracle用户
sudo su oracle
cp -R /home/database/response/ /usr/local/oracle
该文件默认存放在解压后的安装包内,也就是本例中/home/database/response下,将oracle静默安装所需应答文件全部拷贝至 /usr/local/oracle文件夹下
cd /usr/local/oracle/response
chown oracle:oinstall /usr/local/oracle/response/*.rsp
chmod 755 /usr/local/oracle/response/*.rsp
vim /usr/local/oracle/response/db_install.rsp
# 找到对应属性并修改
oracle.install.option=INSTALL_DB_SWONLY #安装类型,只装数据库软件
ORACLE_HOSTNAME=nginx #主机名称(命令hostname查询)
UNIX_GROUP_NAME=oinstall # 安装组
INVENTORY_LOCATION=/usr/local/oraInventory #INVENTORY目录(**不填就是默认值,本例此处需修改,因个人创建安装目录而定)
SELECTED_LANGUAGES=en,zh_CN # 选择语言
ORACLE_HOME=/usr/local/oracle/product/11.2.0/db_1 # oracle_home *路径根据目录情况注意修改 本例安装路径/usr/local/oracle
ORACLE_BASE=/usr/local/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=dba #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(**此处注意与环境变量内配置SID一致)
oracle.install.db.config.starterdb.memoryLimit=8920 #自动管理内存的内存(M)
oracle.install.db.config.starterdb.password.ALL=oracle #设定所有数据库用户使用同一个密码
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false #(手动写了false)
oracle.install.db.config.starterdb.password.SYS=1995
oracle.install.db.config.starterdb.password.SYSTEM=1995
DECLINE_SECURITY_UPDATES=true # **注意此参数 设定一定要为true
cd /home/database/
./runInstaller -silent -responseFile /usr/local/oracle/response/db_install.rsp -ignorePrereq
参数说明:
/home/database 是安装包解压后的路径,此处根据安装包解压所在位置做修改,因人而异。
runInstaller 是主要安装脚本
-silent 静默模式
-force 强制安装
-ignorePrereq忽略warning直接安装。
-responseFile读取安装应答文件。
当出现以下界面时, 表示安装成功了,按照其提示操作。
如果出现以下错误信息,需要增加swap分区:
linux增加swap分区:
# LINUX增加SWAP分区 ---install_oracle
# 我们都知道在安装Linux系统时在分区时可以分配swap分区,而系统安装后(在运行中)如何建立或调整swap分区呢?
# 在装完Linux系统之后,建立Swap分区有两种方法。
# 1.新建磁盘分区作为swap分区
# 2.用文件作为swap分区 (操作更简单,我更常用)
# 下面介绍这两种方法:(都必须用root权限,操作过程应该小心谨慎。)
#一、新建磁盘分区作为swap分区
#1.以root身份进入控制台(登录系统),输入
swapoff -a #停止所有的swap分区
# 2. 用fdisk命令(例:# fdisk /dev/sdb)对磁盘进行分区,添加swap分区,新建分区,在fdisk中用“t”命令将新添的分区id改为82(Linux swap类型),最后用w将操作实际写入硬盘(没用w之前的操作是无效的)。
#3.
mkswap /dev/sdb2 #格式化swap分区,这里的sdb2要看您加完后p命令显示的实际分区设备名
#4.
swapon /dev/sdb2 #启动新的swap分区
# 5. 为了让系统启动时能自动启用这个交换分区,可以编辑/etc/fstab,加入下面一行
/dev/sdb2 swap swap defaults 0 0
#二、用文件作为Swap分区
#1.创建要作为swap分区的文件:增加1GB大小的交换分区,则命令写法如下,其中的count等于想要的块的数量(bs*count=文件大小)。
dd if=/dev/zero of=/root/swapfile bs=1M count=1024
# 2.格式化为交换分区文件:
mkswap /root/swapfile #建立swap的文件系统
# 3.启用交换分区文件:
swapon /root/swapfile #启用swap文件
# 4.使系统开机时自启用,在文件/etc/fstab中添加一行:
/root/swapfile swap swap defaults 0 0
# 新建和增加交换分区用到的命令为:mkswap、swapon等,而想关闭掉某个交换分区则用“swapon /dev/sdb2”这样的命令即可
在root账号登录打开新窗口内执行以下提示的脚本:
/usr/local/oraInventory/orainstRoot.sh
/usr/local/oracle/product/11.2.0/db_1/root.sh