1.在/etc/hosts文件中添加本机IP跟主机名
注:添加完成后控制台指令前缀会变成,root@myhost,oracle@myhost,如果没有改变重启虚拟机,直到出现@myhost,虚拟机重启或者关机后请确认ip地址是否改变。如果无变化,查看/etc/sysconfig/network, 修改HOSTNAME属性。
vi /etc/hosts
2.关闭selinux ,
编辑 /etc/selinux/config文件,
设置SELINUX= enforcing 为SELINUX=disabled
vi /etc/selinux/config
3.关闭防火墙
service iptables stop #os6
systemctl stop firewalld #os7
4.安装Oracle 11g依赖包
yum -y install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static elfutils-libelf-devel ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel libXp*
5.修改内核参数:vi /etc/sysctl.conf
添加以下设置:
io-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
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 = 1048576
输入命令让参数生效:sysctl -p
在FinalShell中运行
6.修改用户的限制文件,编辑 /etc/security/limits.conf
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
7.修改/etc/pam.d/login文件,添加:
vi /etc/pam.d/login
session required /lib64/security/pam_limits.so
session required pam_limits.so
8.修改/etc/profile文件:
vi /etc/profile
添加:
if [ $USER = "oracle" ]; then
ulimit -u 16384 -n 65536
fi
使其生效
source /etc/profile
9.添加oinstall 、dba 组,
新建oracle用户并加入oinstall、dba组中
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
设置oracle用户登录密码
passwd oracle
10.创建安装目录、修改文件权限
mkdir -p /u01/app/oracle/product/11.2.0
mkdir -p /u01/app/oracle/oradata
mkdir -p /u01/app/inventory
mkdir -p /u01/app/oracle/fast_recovery_area
chown -R oracle:oinstall /u01/app
chmod -R 775 /u01/app/
11.解压oracle软件包,到tep下
——put捕获,借用SecureCRTPortable捕获
下载unzip
##yum install unzip -y
[root@localhost tmp]# unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_database_2of2.zip
12.切换到oracle用户,设置oracle用户环境变量
注:
su 和 su - 进入的目录是不一样的
su 会保持前者的用户环境, 而 su - 会新建一个目的用户的环境
[root@localhost database]# su - oracle
[oracle@localhost ~]$ vi .bash_profile
添加:
export PATH
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
13.编辑静默安装响应文件
——root用户
(1)切换到root 用户进入oracle安装包解压后的目录 /tmp/database/response/下备份db_install.rsp文件。
(2)编辑 /tmp/database/response/db_install.rsp文件,修改以下参数:
vi /tmp/database/response/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=主机名
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
14.根据响应文件安装oracle 11g
——oracle用户
[oracle@myhost database]$ unset DISPLAY
[oracle@myhost database]$ ./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /tmp/database/response/db_install.rsp
按照提示切换root用户运行脚本
[tom@myhost ~]$ su
[root@myhost tom]# sh /u01/app/inventory/orainstRoot.sh
[root@myhost tom]# sh /u01/app/oracle/product/11.2.0/root.sh
15.用oracle用户登录配置监听
[oracle@myhost database]$ export DISPLAY=localhost:0.0
[oracle@myhost database]$ netca -silent -responseFile /tmp/database/response/netca.rsp
成功运行后,会在/u01/app/oracle/product/11.2.0/network/admin/ 中生成listener.ora和sqlnet.ora两个文件。
查看监听端口:
[oracle@myhost database]$ netstat -tnulp | grep 1521
16.建立新库,同时建立对应的实例
切换到root用户,vi /tmp/database/response/dbca.rsp,修改以下参数:
su ——切换到主用户root
vi /tmp/database/response/dbca.rsp
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
DATAFILEDESTINATION =/u01/app/oracle/oradata
RECOVERYAREADESTINATION=/u01/app/oracle/fast_recovery_area
CHARACTERSET = "ZHS16GBK"
TOTALMEMORY = "1638"
进行静默配置——在虚拟机里运行
切换到oracle用户
[root@myhost database]# su - oracle
[oracle@myhost ~]$ dbca -silent -responseFile /tmp/database/response/dbca.rsp
查看完成建库后进行实例检查
[oracle@myhost ~]$ ps -ef | grep ora_
查看监听状态
[oracle@myhost ~]$ lsnrctl status
登录
[oracle@myhost ~]$ sqlplus sys/sys as sysdba
17.linux上启动Oracle数据库
以下命令只能在oracle用户下执行
启动和关闭数据库
通过sqlplus连接上数据库
sqlplus / as sysdba
执行starup命令启动数据库
SQL>startup --启动数据库
经常会出现关闭虚拟机数据库被关闭的情况,链接不上请打开数据库
关闭数据库,需要先登陆sqlplus
SQL>shutdown immediate --关闭数据库
启动监听器
lsnrctl start --启动监听器
lsnrctl stop --关闭监听器
lsnrctl status --查看监听器的状态