CentOS 5.2 x86 安装Oracle 11g R2 笔记


一.安装CentOS
 二.安装ora所需的库
 三.修改centos内核
 四.建用户组和目录结构等
 五.安装ora11g2r
 六.安装sqlplus的翻页程序和help补丁
 七.自启动脚本
 八.常用命令

一.安装CentOS 5.2 32bit。
 1.内存2G,Swap分区3G (3200M 约为1.5倍 报memory target 错误,调高至4500m 待测)
 2.应用程序里,不选择"办公/效率率","游戏和娱乐","视频和音频"
 3.开发里,勾选"开发工具",和"开发库" (勾选后,后面提示缺3个包)
 4.关闭Selinux和iptables
 5.安装vmware增强工具,并将分辨率设置为1024*768
 6.加载光驱 mount -r /dev/hdc /media  (以只读方式挂载光驱)  umount /dev/hdc 

二.安装ora所需的库
 1.将CentOS安装盘挂载
 2.查询包是否安装
 rpm -q binutils-2.17.50.0.6 compat-libstdc++-33-3.2.3 elfutils-libelf-0.125 elfutils-libelf-devel-0.125 elfutils-libelf-devel-static-0.125 gcc-4.1.2 gcc-c++-4.1.2 glibc-2.5-24 glibc-common-2.5 glibc-devel-2.5 glibc-headers-2.5 kernel-headers-2.6.18 ksh-20060214 libaio-0.3.106 libaio-devel-0.3.106  libgcc-4.1.2 libgomp-4.1.2 libstdc++-4.1.2 libstdc++-devel-4.1.2 make-3.81 sysstat-7.0.2
 
3.安装库包
 缺三个
 rpm -ivh compat-libstdc++-33-3.2.3*.rpm libaio-devel-0.3.106*.rpm sysstat-7.0.2*.rpm
 
4.安装数据库驱动
 rpm -q unixODBC-2.2.11 unixODBC-devel-2.2.11
 rpm -ivh unixODBC-2.2.11*.rpm unixODBC-devel-2.2.11*.rpm
 
5.安装包
 yum install pdksh
 (vim /etc/yum.conf      keepcache=1 改为保存下载包 ksh-20100621-18.el5.i386.rpm  pdksh-5.2.14-37.el5_8.1.i386.rpm
 )
 
三.修改linux内核
 
1.修改控制文件
 vim /etc/sysctl.conf
 
kernel.shmmni = 8192
 kernel.sem =250 32000 100 128
 fs.file-max = 6815744
 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
 fs.aio-max-nr = 1048576
 
2.修改许可文件
 vim  /etc/security/limits.conf
 
*  soft  nproc  2047
 *  hard  nproc  16384
 *  soft  nofile 1024
 *  hard  nofile 65536
 
3.修改登陆安全文件
 vim /etc/pam.d/login
 
session  required  pam_limits.so
 
4.修改selinux(已改,查下)
 vim /etc/selinux/config
 
SELINUX=disabled
 
5.修改主机名
 
vim /etc/hosts  删除掉所有其他的条目 只留一条
 
192.168.7.72            ora.tralinhotel.cn    ora
 
四.建用户组和目录结构等
 1.建用户和组,并设置密码
 
groupadd oinstall
 groupadd dba
 groupadd oper
 groupadd asmadmin
 useradd -g oinstall -G dba,oper,asmadmin Oracle
 passwd oracle
 

2.建目录结构
 mkdir -p /u01/app/oracle/product/11.2.0/
 mkdir /u01/oradata
 chmod -R 755 /u01
 chown -R oracle.oinstall /u01
 
3.修改环境变量
 vim /home/oracle/.bash_profile
 
export TMP=/tmp
 export TMPDIR=$TMP
 export ORACLE_BASE=/u01/app/oracle
 export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/
 export ORACLE_SID=ora
 export PATH=$PATH:$ORACLE_HOME/bin:/usr/local/sbin:/usr/local/bin
 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
 export CLASS_PATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
 export LANG="zh_CN.UTF-8"
 export ORACLE_TERM=vt100
 if [ $USER = "oracle" ] ; then
  if [ $SHELL = "/bin/ksh" ] ; then
  ulimit -p 16384
  ulimit -n 65536
  else
  ulimit -u 16384 -n 65536
  fi
 fi
 
4.即时生效
 在终端运行  /sbin/sysctl -p

五.安装oracle 11g2r
 1.下载ora11g2r
 su - oracle
 wget ftp://sdgtxuyong:xxxxx@192.168.7.66/tools/database/oracle11/linux_11gR2_database_1of2.zip
 wget ftp://sdgtxuyong:xxxxx@192.168.7.66/tools/database/oracle11/linux_11gR2_database_2of2.zip
 unzip  linux_11gR2_database_1of2.zip
 unzip  linux_11gR2_database_2of2.zip
 
2.到ui界面,用root开启xhost+
 xhost +
 
3.安装ora11g2r
 su - oracle
 cd database
 ./runInstaller
 
4.修改tmpfs的分区大小(提示xx缓冲区太小错误,在centos6下,安装了3次,无报错,但在centos5下,报错)
 vim /etc/fstab
 
tmpfs          default,size=6g 0 0
 
六.安装sqlplus的翻页程序和help补丁
 1.sqlplus翻页程序
 wget ftp://sdgtxuyong:xxxxx@192.168.7.66/tools/database/oracle11/rlwrap-0.37.tar.gz
 tar zxvf rlwrap-0.37.tar.gz
 ./configure
 
make && make install
 
写入用户系统变量
 # echo 'alias sqlplus="rlwrap sqlplus"'>> /home/oracle/.bash_profile
 
2.安装帮助 help 用 system登陆
 @?/sqlplus/admin/help/hlpbld.sql helpus.sql
 用法:help shutdown
 
3.证书bug
 certutil -setreg chain\minRSAPubKeyBitLength 512
 
七.自启动脚本(###待续)
 

八.常用命令
 
sqlplus / as sysdba
 
1.开启关闭
 startup nomount | mount | open
 alter database mount | open
 shutdown immediate
 
2.监听服务
 lsnrctl
 
3.开启oem监控命令
 emctl start|stop dbconsole

4.用户
 创建
 create user 用户名 identified by 口令 [account lock|unlock]
 解锁
 alter user 用户名 account lock|unlock;
 授权
 grant CONNECT, RESOURCE TO 用户名;
回收
 revoke CONNECT, RESOURCE FROM 用户名;
 
5.查询
 查看当前用户的缺省表空间
select username,default_tablespace from user_users;
 
查看用户下所有的表  select * from user_tables;
 
查看名称包含log字符的表 select object_name,object_id from user_objects  where instr(object_name,'LOG')>0;
 查看某表的大小 select sum(bytes)/(1024*1024) as "size(M)" from user_segments  where segment_name=upper('&table_name');
 查看表空间的名称及大小
 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size  from dba_tablespaces t, dba_data_files d where t.tablespace_name = d.tablespace_name group by t.tablespace_name;
 
查看表空间物理文件的名称及大小
 select tablespace_name, file_id, file_name,
  round(bytes/(1024*1024),0) total_space
  from dba_data_files
  order by tablespace_name;
 
查看控制文件
 select name from v$controlfile;
 
查看日志文件
 select member from v$logfile;
 
查看表空间的使用情况
 select sum(bytes)/(1024*1024) as free_space,tablespace_name
  from dba_free_space
  group by tablespace_name;
 
SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,
  (B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE"
  FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C
  WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME;
 
查看数据库的版本
 Select version FROM Product_component_version Where SUBSTR(PRODUCT,1,6)='Oracle';
 
查看数据库的创建日期和归档方式
 Select Created, Log_Mode, Log_Mode From v$Database;

相关内容