SUSE12 SP2安装Oracle11G
一、下载Orcle11G和依赖包
二、上传oracle安装文件和依赖包文件到SUSE12 SP2的/install目录下
linux-0ujx:/install # rz –y
如果rz –y命令不能使用,可用如下方法解决:
yum install lrzsz -y
三、解压文件到当前目录
linux-0ujx:/install # unzip linux.x64_11gR2_database_1of2.zip
linux-0ujx:/install # unzip linux.x64_11gR2_database_2of2.zip
linux-0ujx:/install # unzip rpm.zip
linux-0ujx:/install # mv database/ /software/
linux-0ujx:/install # mv rpm/ /software/
四、关闭防火墙
linux-0ujx:/install # systemctl stop SuSEfirewall2.service
linux-0ujx:/install # systemctl stop SuSEfirewall2_init.service
linux-0ujx:/install # systemctl disable SuSEfirewall2.service
linux-0ujx:/install # systemctl disable SuSEfirewall2_init.service
五、安装Oracle 11g依赖包
linux-0ujx:/install # cd /software/rpm
linux-0ujx:/software/rpm # rpm -ivh * --nodeps --force
六、添加安装用户和用户组
linux-0ujx:/software/rpm # groupadd oinstall
linux-0ujx:/software/rpm # groupadd dba
linux-0ujx:/software/rpm # useradd -g oinstall -G dba oracle
linux-0ujx:/software/rpm # passwd oracle
七、修改内核参数配置文件
linux-0ujx:/software/rpm # vim /etc/sysctl.conf
在末尾添加以下内容:
fs.aio-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
查看是否成功写进/etc/sysctl.conf文件中:
linux-0ujx:/software/rpm # sysctl -p
其中kernel.shmmax = 1073741824为本机物理内存(2G)的一半,单位为byte。
八、修改用户的限制文件
修改/etc/security/limits.conf文件:
linux-0ujx:/software/rpm # vim /etc/security/limits.conf
在末尾添加以下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
修改/etc/pam.d/login文件:
linux-0ujx:/software/rpm # vim /etc/pam.d/login
在末尾添加以下内容:
session required /lib64/security/pam_limits.so
session required pam_limits.so
修改/etc/profile文件:
linux-0ujx:/software/rpm # vim /etc/profile
在末尾添加以下内容:
#oracle配置
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
九、创建安装目录和设置文件权限
linux-0ujx:/software/rpm # mkdir -p /database/oracle/product/11.2.0
linux-0ujx:/software/rpm # mkdir /database/oracle/oradata
linux-0ujx:/software/rpm # mkdir /database/oracle/inventory
linux-0ujx:/software/rpm # mkdir /database/oracle/fast_recovery_area
linux-0ujx:/software/rpm # chown -R oracle:oinstall /database/oracle
linux-0ujx:/software/rpm # chmod -R 775 /database/oracle
十、设置oracle用户环境变量
首先切换到oracle用户下:
linux-0ujx:/software/rpm # su -l oracle
oracle@linux-0ujx:~> vim .bash_profile
在末尾添加如下内容:
ORACLE_BASE=/database/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
注意,
ORACLE_SID
必须与创建的数据库实例名称一致,否则数据库启动后无法访问。第一次配置完记得source一下。
oracle@linux-0ujx:~> source .bash_profile
十一、编辑静默安装响应文件
复制安装文件夹response到当前oracle用户的家目录下:
oracle@linux-0ujx:~> cp -R /software/database/response/ .
oracle@linux-0ujx:~> cd response/
oracle@linux-0ujx:~/response> vim db_install.rsp
需要设置的选项如下:
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=CentOS
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/database/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/database/oracle/product/11.2.0
ORACLE_BASE=/database/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
十二、根据响应文件静默安装Oracle11g
oracle@linux-0ujx:~/response> cd /software/database/
oracle@linux-0ujx:/software/database> ./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq
开始Oracle在后台静默安装。安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在后台进行
可以在以下位置找到本次安装会话的日志:/database/oracle/inventory/logs/installActions2020-10-13_08-22-55PM.log
可以切换终端执行top命令查看后台进程一直是在安装的,/data目录也在不断增大,
当出现以下提示时,代表安装成功:
按照要求执行脚本。
打开终端,退出到root身份登录,执行脚本:
oracle@linux-0ujx:/software/database> exit
linux-0ujx:/software/rpm # sh /data/oracle/inventory/orainstRoot.sh
linux-0ujx:/software/rpm # sh /data/oracle/product/11.2.0/root.sh
十三、以静默方式配置监听
重新使用oracle用户登录:
linux-0ujx:/software/rpm # su -l oracle
oracle@linux-0ujx:~> netca /silent /responseFile /home/oracle/response/netca.rsp
注意此处,必须使用/silent /responseFile格式,而不是-silent -responseFile,因为是静默安装。
成功运行后,在/database/oracle/product/11.2.0/network/admin中生成listener.ora和sqlnet.ora
通过netstat命令可以查看1521端口正在监听。
oracle@linux-0ujx:~> netstat -tnulp | grep 1521
十四、以静默方式建立新库,同时也建立一个对应的实例
oracle@linux-0ujx:~> dbca -silent -responseFile /home/oracle/response/dbca.rsp
修改文件中以下参数:
[GENERAL]
oracle版本,不能更改
RESPONSEFILE_VERSION = "11.2.0"
Description : Type of operation
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
Description : Global database name of the database
全局数据库的名字=SID+主机域名
第三方工具链接数据库的时候使用的service名称
GDBNAME = "orcl.test"
Description : System identifier (SID) of the database
对应的实例名字
SID = "orcl"
Description : Name of the template
建库用的模板文件
TEMPLATENAME = "General_Purpose.dbc"
Description : Password for SYS user
SYS管理员密码
SYSPASSWORD = "123456"
Description : Password for SYSTEM user
SYSTEM管理员密码
SYSTEMPASSWORD = "123456"
Description : Password for SYSMAN user
SYSMAN管理员密码
SYSMANPASSWORD = "123456"
Description : Password for DBSNMP user
DBSNMP管理员密码
DBSNMPPASSWORD = "123456"
Description : Location of the data file's
数据文件存放目录
DATAFILEDESTINATION =/data/oracle/oradata
Description : Location of the data file's
恢复数据存放目录
RECOVERYAREADESTINATION=/data/oracle/fast_recovery_area
Description : Character set of the database
字符集,重要!!! 建库后一般不能更改,所以建库前要确定清楚。
(CHARACTERSET = "AL32UTF8" NATIONALCHARACTERSET= "UTF8")
CHARACTERSET = "ZHS16GBK"
Description : total memory in MB to allocate to Oracle
oracle内存1638MB,物理内存2G*80%
TOTALMEMORY = "1638"
进行静默配置:
oracle@linux-0ujx:~> dbca -silent -responseFile /home/oracle/response/dbca.rsp
建库后进行实例进程检查:
oracle@linux-0ujx:~> ps -ef | grep ora_ | grep -v grep
查看监听状态:
oracle@linux-0ujx:~> lsnrctl status
数据库创建完成。
有关详细信息, 请查看以下位置的日志文件: /database/oracle/cfgtoollogs/dbca/orcl/orcl.log。
数据库信息:
全局数据库名:orcl.test
系统标识符 (SID):orcl
登录查看实例状态:
oracle@linux-0ujx:~> sqlplus / as sysdba
SQL> select status from v$instance;
十五、linux 成功安装oracle后,为其创建一个登录账户
- 使用sysdba账户登录
oracle@linux-0ujx:~> sqlplus / as sysdba
-
创建用户
语法:CREATE USER 用户名 IDENTIFIED BY 密码;
CREATE USER test IDENTIFIED BY test;
-
授予新登陆的用户创建权限:
语法:CRANT CREATE SESSION TO 用户名
grant create session to test;
-
授予新创建的用户数据库管理员权限
语法:CRANT DBA TO 用户名;
grant dba to test;
-
切换到新创建的用户登陆
语法:CONNECT 用户名/密码
connect test/test;