本例:
通过SSH远程连接云主机,上传oracle11g安装包,在centos6.5上无图形化界面静默安装oracle11g。
涉及工具及环境:
1、本地环境windows7+ssh远程连接工具xShell
2、远程云主机CentOS6.5 64位系统
3、安装包文件linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip
云主机要求:
1、最小内存1G,推荐2G或2G以上
2、1GB跟2GB物理内存之间的,设定swap大小为物理内存的1.5倍
2GB跟16GB物理内存之间的,设置swap大小与物理内存相等
16GB物理内存以上的,设置swap大小为16GB
3、硬盘要求空间至少5-6GB
安装步骤:
1、 安装依赖包yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf
elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686
glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686
libstdc++ libstdc++.i686 libstdc++-devel make sysstat unixODBC unixODBC-devel
2、设定swap空间
1.##在/home/下生成swap文件 设定大小2GB
dd if=/dev/zero of=/home/swapfile bs=1M count=2048
2.##设定使用/home/swapfile交换文件
mkswap /home/swapfile
3.##启用交换分区
swapon /home/swapfile
4.##编辑文件/ect/fstab
vi /etc/fstab
##以便引导系统时启用交换文件,文件最下方插入
/home/swapfile swap swap defaults 0 0
3、添加oracle用户##创建oinstall、dba组 将oracle用户加入组 修改并设定oracle用户密码
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
4、修改内核参数
##编辑文件/etc/sysctl.conf
vi /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 = 1048586
##执行命令sysctl使其自检并生效
sysctl -p
5、修改用户资源限制
## 1.修改/etc/security/limits.conf配置文件
vi /etc/security/limits.conf
## 2.配置文件下方加入
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
## 3.修改/etc/pam.d/login配置文件
vi /etc/pam.d/login
## 4.配置文件内加入
session required /lib/security/pam_limits.so
session required pam_limits.so
6、创建安装目录##创建安装目录 /usr/local/oracle /usr/local/oraInventory
/usr/local/oradata 并赋予组用户及权限
mkdir -p /usr/local/oracle /usr/local/oraInventory /usr/local/oradata/
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/
7、创建oraInst.loc文件
##创建/etc/oraInst.loc文件
vi /etc/oraInst.loc
##文件内加入以下内容
inventory_loc=/usr/local/oraInventory
inst_group=oinstall
##保存退出后执行以下命令。设定该文件的用户组及权限。
chown oracle:oinstall /etc/oraInst.loc
chmod 664 /etc/oraInst.loc
8、通过xshell上传zip文件并解压
##解压缩命令
cd /home
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
##待解压完毕后会生成文件夹/home/database 修改其用户组及权限此处直接使用777
chmod 777 /home/database
chown -R oracle.oinstall /home/database
9、准备oracle安装应答模板文件db_install.rsp文件。
##
、该文件默认存放在解压后的安装包内,也就是本例中/home/database/response下,
## 将oracle静默安装所需应答文件全部拷贝至 /usr/local/
10、设置oracle用户环境
## 由root切换至创建好的oracle用户
su - oracle
## 修改该用户的用户配置文件
vi .bash_profile
## 文件内加入并修改至以下内容
export ORACLE_BASE=/usr/local/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export ORACLE_OWNER=oracle
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
## 保存退出后执行source命令立即生效。
source .bash_profile
11、在oracle用户下开始安装。
## 执行命令。
/home/database/./runInstaller -silent -force -ignorePrereq -responseFile
/usr/local/oracle/db_install.rsp
##参数说明
/home/database是安装包解压后的路径,此处根据安装包解压所在位置做修改,因人而异。
runInstaller 是主要安装脚本
-silent 静默模式
-force 强制安装
-ignorePrereq忽略warning直接安装。
-responseFile读取安装应答文件。
12、xshell另起窗口并以root登陆。通过 watch -d -n 2 'du -sh /usr/local/oracle' 监测oracle安装目录是否变化。
或者直接tail -f命令监测安装log日志。不赘述。
13、等待安装编译直至出现以下内容,在新创建的root窗口内执行以下提示内的脚本,既/usr/oracle/oraInventory/orainstRoot.sh /usr/oracle/product/11.2.0/db_1/root.sh。
#-------------------------------------------------------------------
/usr/oracle/oraInventory/orainstRoot.sh
/usr/oracle/product/11.2.0/db_1/root.sh
To execute the configuration scripts:
1. Open a terminal window
2. Log in as "root"
3. Run the scripts
4. Return to this window and hit"Enter" key to continue
Successfully Setup Software.
#-------------------------------------------------------------------
oracle常用命令
[root@oracledb ~]# su – oracle
[oracle@oracledb ~]# sqlplus / assysdba
SQL> startup #启动数据库实例
SQL> shutdown immediate #关闭数据库实例
SQL> select * from tab; #查看所有表
SQL> select name from v$datafile #查看数据库存放目录
SQL> show parameter service #查看服务名
SQL> select * from v$instance; #查看实例名
SQL> select name from v$database; #查看数据库名
SQL> select * fromdba_users; #查看所有用户信息
SQL> select username,password from dba_users; #只查询用户和密码
SQL> select * fromv$pwfile_users; #查看具有sysdba权限的用户
SQL> select * fromdba_ustats; #查看当前用户信息
SQL> select * fromuser_sys_privs #查看当前用户系统权限
SQL> select * fromuser_role_privs #查看当前用户角色
SQL> select * fromdba_sys_privs #查看指定用户所具有的系统权限
SQL> select * fromv$version #查看oracle版本
SQL> select * fromuser_views #查看视图信息
[root@oracledb ~]# lsnrctl start #开启远程监听端口