linux6.x系统下oracle11g安装及基础调优
目录
1. 安装前准备
1.1 修改/etc/hosts
vi /etc/hosts
192.168.32.10 shuai.com shuai
1.2 内核参数调整
vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
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 -p
1.3 修改资源限制
vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
vi /etc/pam.d/system-auth
session required pam_limits.so
shutdown -r 0
1.4 建立oracle用户和组
groupadd -g 1000 oinstall
groupadd -g 1001 dba
useradd -u 1000 -g oinstall -G dba oracle
echo '密码' | passwd --stdin oracle
1.5 建立oracle软件安装目录
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/
1.6 设置oracle环境变量
su - oracle
vi .bash_profile
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0
export ORACLE_SID=mydb
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
source .bash_profile
1.7 软件包打包
yum -y install binutils-* compat-libcap1-* compat-libstdc++-* elfutils-libelf-devel-* gcc-* gcc-c++-* glibc-* glibc-devel-* ksh* libaio-* libaio-devel-* libgcc-* libstdc++-* libstdc++-devel-* make-* sysstat-*
rpm -ivh pdksh-5.2.14-30.x86_64.rpm --force --nodeps
2. 图形化安装oracle软件
2.1 安装过程
su - oracle
unzip p10404530_112030_Linux-x86-64_1of7.zip -d /home/oracle
unzip p10404530_112030_Linux-x86-64_2of7.zip -d /home/oracle
cd /home/oracle/database/
./runInstaller
/u01/app/oracle/oraInventory/orainstRoot.sh
/u01/oracle/product/11.2.0/root.sh
2.2 常见错误处理
1. “PRVF-0002 : Could not retrieve local nodename”报错
原因:该错误主要是由于hosts文件配置问题引起的,在hosts文件中加入服务器ip以及hostname即可。
# vi /etc/hosts
172.16.100.200 shuai.com shuai
2. 图形安装界面乱码问题
该问题是因为操作系统的语言为中文引起的,将操作系统语言改为英语即可。
# vi /etc/sysconfig/i18n
#LANG="zh_CN.UTF-8"
LANG="en_US.UTF-8"
shutdown -r 0
或
export LANG="en_US.UTF-8"
3. 创建数据库
3.1 创建过程
su - oracle
dbca
3.2 验证数据库状态
查看数据库后台进程
ps aux | grep ora_
验证实例是否正常
sqlplus / as sysdba
select status from v$instance;
STATUS
----------
OPEN
3.3 常见错误处理
如果创建过程中出现如下错误提示:
解决方法
1)需要关闭iptables服务,或增加开放1521策略。
service iptables stop
chkconfig iptables off
iptables -I INPUT 1 -p tcp --dport 1521 -j ACCEPT
2)关闭SELinux
a. 临时关闭(不用重启机器):
setenforce 0 //设置SELinux 成为permissive模式
b. 修改配置文件需要重启机器:
vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
shutdown –r 0 //重启机器即可
4. 数据库调优
4.1 内存参数调优
11g引入自动内存管理(AMM)特性,注意要先调整共享内存(/dev/shm),否则会报ORA-00845:MEMORY_TARGET not supported on this system 错误。
vi /etc/fstab
tmpfs /dev/shm tmpfs defaults,size=1536m 0 0
mount -o remount tmpfs
df -Th /dev/shm
create pfile='/home/oracle/initmydb.ora' from spfile;
alter system set pga_aggregate_target=1024M scope=spfile;
alter system set sga_target=2048M scope=spfile;
alter system set memory_target=3072M scope=both;
alter system set memory_max_target=6144M scope=spfile;
shutdown immediate;
startup;
4.2 表空间调整
select file_id,file_name,tablespace_name,bytes/1024/1024 MB,autoextensible,maxbytes/1024/1024 MAX_MB from dba_data_files order by file_id;
alter database datafile 1 resize 8G;
alter database datafile 2 resize 8G;
alter database datafile 3 resize 20G;
alter database datafile 3 autoextend off;
select tablespace_name,file_name,bytes/1024/1024 MB,user_bytes/1024/1024 USED_MB,autoextensible,maxbytes/1024/1024 MAX_MB from dba_temp_files;
alter database tempfile '.../temp01.dbf' resize 20G;
alter database tempfile '.../temp01.dbf' autoextend off;
4.3 redo日志调整
select group#,bytes/1024/1024 MB,members,status from v$log;
select group#,member from v$logfile;
alter database add logfile group 4 '.../redo04.log' size 100M;
alter database add logfile group 5 '.../redo05.log' size 100M;