Linux安装Oracle11G
0、下載Orcle11G
1、上傳文件到服務器或虛擬機的/install目錄下
2、解壓文件到當前目錄:
3、關閉selinux
4、關閉防火墻
5、安裝Oracle 11g依賴包
6、添加安裝用戶和用戶組
7、修改內核參數配置文件
8、修改用戶的限制文件
9、創建安裝目錄和設置文件權限
10、設置oracle用戶環境變量
11、編輯靜默安裝響應文件
12、根據響應文件靜默安裝Oracle11g
13、以靜默方式配置監聽
14、以靜默方式建立新庫,同時也建立一個對應的實例
15、命令行模式靜默刪除
?
0、下載Orcle11G
oracle10G/11G官方
[root@myYUn install]#中的myYUn
等價于
[root@iz2f570bi1k56uz install]#中的iz2f570bi1k56uz;
這是為了界面效果調整的,但是有些沒調整到,
?
1、上傳文件到服務器或虛擬機的/install目錄下
[root@myYUn install]# rz –y
如果rz –y命令不能使用,可用如下方法解決:
yum install lrzsz -y
2、解壓文件到當前目錄:
[root@myYUn install]# unzip linux.x64_11gR2_database_1of2.zip
[root@myYUn install]# unzip linux.x64_11gR2_database_2of2.zip
如果unzip命令不能使用,依次執行如下命令:
? ? ?yum list | grep zip/unzip
? ? ?yum install zip
? ? ?yum install unzip?
將解壓后的文件夾直接移動到/software目錄下:
[root@myYUn install]# mv database/ /software/
[root@myYUn install]# cd /software
[root@myYUn install]# ll
3、關閉selinux
[root@myYUn software]# vim /etc/selinux/config
設置SELINUX=disabled
[root@myYUn software]# setenforce 0
4、關閉防火墻
查看系統版本:
[root@myYUn software]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@myYUn software]# getconf LONG_BIT
64
如果是6及以下:
[root@myYUn software]# service iptables stop
[root@myYUn software]# service iptables status
[root@myYUn software]# chkconfig iptables off
如果是centenOS7:
[root@myYUn software]# systemctl restart firewalld.service
[root@myYUn software]# systemctl list-unit-files|grep firewalld.service
firewalld.service ? ? ? ? ? ? ? ? ? ? ? ? ? ? disabled
[root@myYUn software]# systemctl disable firewalld.service
5、安裝Oracle 11g依賴包
[root@myYUn software]# yum install gcc make binutils gcc-c++ compat-libstdc++-33elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-develnumactl-devel sysstat unixODBC unixODBC-devel pcre-devel –y
6、添加安裝用戶和用戶組
[root@myYUn software]# groupadd oinstall
[root@myYUn software]# groupadd dba
[root@myYUn software]# useradd -g oinstall -G dba oracle
[root@myYUn software]# passwd oracle
Changing password for user oracle.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@myYUn software]# id oracle
uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba)
7、修改內核參數配置文件
[root@myYUn software]# 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文件中:
[root@myYUn software]# sysctl -p
其中kernel.shmmax = 1073741824為本機物理內存(2G)的一半,單位為byte。
8、修改用戶的限制文件
修改/etc/security/limits.conf文件:
[root@myYUn software]# 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文件:
[root@myYUn software]# vim /etc/pam.d/login
在末尾添加以下內容:
session required ?/lib64/security/pam_limits.so
session required ? pam_limits.so?
修改/etc/profile文件:
[root@ myYUn software]# 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?
9、創建安裝目錄和設置文件權限
[root@myYUn software]# mkdir -p /data/oracle/product/11.2.0
[root@myYUn software]# mkdir /data/oracle/oradata
[root@myYUn software]# mkdir /data/oracle/inventory
[root@myYUn software]# mkdir /data/oracle/fast_recovery_area
[root@myYUn software]# chown -R oracle:oinstall /data/oracle
[root@myYUn software]# chmod -R 775 /data/oracle
10、設置oracle用戶環境變量
首先切換到oracle用戶下:
[root@myYUn software]# su -l oracle
[oracle@myYUn ~]$ vim .bash_profile
在末尾添加如下內容:
ORACLE_BASE=/data/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
注意,標紅處必須與創建的數據庫實例名稱一致,否則數據庫啟動后無法訪問。第一次配置完記得source一下。
[oracle@myYUn ~]$ source .bash_profile
11、編輯靜默安裝響應文件
復制安裝文件夾response到當前oracle用戶的家目錄下:
[oracle@myYUn ~]$ cp -R /software/database/response/ .
[oracle@myYUn ~]$ cd response/
[oracle@myYUn response]$ vim db_install.rsp
需要設置的選項如下:
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=CentOS
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/data/oracle/product/11.2.0
ORACLE_BASE=/data/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true?
12、根據響應文件靜默安裝Oracle11g
[oracle@myYUn response]$ cd /software/database/
[oracle@myYUn database]$ ./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq?
如果執行以上命令出錯,會提示有參數格式,按照提示參數格式修改修改即可,一般是由于word中的字體、符號格式復制到客戶端命令行后不一致引起,修改即可。?
遇到了交換空間不足的問題:
解決方案如下(在root用戶下執行):
[root@myYUn /]# free
[root@myYUn /]# dd if=/dev/zero of=swapfile bs=1024 count=500000
500000+0 records in
500000+0 records out
512000000 bytes (512 MB) copied, 1.67013 s, 307 MB/s
[root@myYUn /]# mkswap swapfile
Setting up swapspace version 1, size = 499996 KiB
no label, UUID=c5e355eb-e73e-4aa0-b882-cb6d1f88e6bc
[root@myYUn /]# swapon swapfile
swapon: /swapfile: insecure permissions 0644, 0600 suggested.
[root@myYUn /]# free
開始Oracle在后臺靜默安裝。安裝過程中,如果提示[WARNING]不必理會,此時安裝程序仍在后臺進行,如果出現Successfully Setup Software,則安裝程序已經停止了。
可以在以下位置找到本次安裝會話的日志:/data/oracle/inventory/logs/installActions2018-05-13_02-14-55PM.log?
可以切換終端執行top命令查看后臺進程一直是在安裝的,/data目錄也在不斷增大,
當出現以下提示時,代表安裝成功:
按照要求執行腳本。
打開終端,退出到root身份登錄,執行腳本:
[oracle@iZ2f570bi1k56uZ database]$ exit
logout
[root@iZ2f570bi1k56uZ software]# sh /data/oracle/inventory/orainstRoot.sh
Changing permissions of /data/oracle/inventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.?
Changing groupname of /data/oracle/inventory to oinstall.
The execution of the script is complete.
[root@iZ2f570bi1k56uZ software]# sh /data/oracle/product/11.2.0/root.sh
Check /data/oracle/product/11.2.0/install/root_iZ2f570bi1k56uZ_2018-05-13_14-25-04.log for the output of root script
13、以靜默方式配置監聽
重新使用oracle用戶登錄:
[root@myYUn software]# su -l oracle
Last login: Sun May 13 14:09:10 CST 2018 on pts/3
[oracle@myYUn ~]$ netca /silent /responseFile /home/oracle/response/netca.rsp?
注意此處,必須使用/silent /responseFile格式,而不是-silent -responseFile,因為是靜默安裝。
成功運行后,在/data/oracle/product/11.2.0/network/admin中生成listener.ora和sqlnet.ora?
通過netstat命令可以查看1521端口正在監聽。?
Yum安裝netstat軟件,軟件包是在net-tools中。
[root@myYUn /]# yum install net-tools
[root@myYUn /]# yum install net-tools?
14、以靜默方式建立新庫,同時也建立一個對應的實例
[oracle@myYUn ~]$ vim /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@myYUn ~]$ dbca -silent -responseFile /home/oracle/response/dbca.rsp
建庫后進行實例進程檢查:
[oracle@myYUn ~]$ ps -ef | grep ora_ | grep -v grep
查看監聽狀態:
[oracle@myYUn ~]$ lsnrctl status
數據庫創建完成。
有關詳細信息, 請查看以下位置的日志文件: /data/oracle/cfgtoollogs/dbca/orcl/orcl.log。
數據庫信息:
全局數據庫名:orcl.test
系統標識符 (SID):orcl?
登錄查看實例狀態:
[oracle@myYUn ~]$ sqlplus / as sysdba
SQL> select status from v$instance;?
[linux 成功安裝oracle后,為其創建一個登錄賬戶]?
如果報錯:[ORA-12162: TNS:net service name is incorrectly specified]
錯誤原因:[這個錯誤是因為ORACLE_SID變量沒有傳進去造成的。]
解決方法:
1.查看當前ORACLE_SID
[oracle@iZ2f570bi1k56uZ ~]$ echo $ORACLE_SID
orcl ? ? ? ? ? ? ? ??
2.修改ORACLE_SID和/home/oracle/response/dbca.rsp中的一樣 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
[oracle@iZ2f570bi1k56uZ ~]$ export ORACLE_SID=orcl
3.如果遇到ORA-12162: TNS:net service name is incorrectly specified.錯誤
參考文章:[ORA-12162: TNS:net service name is incorrectly specified.]
4.如果依然不能登陸,嘗試修改orcle文件夾的權限
[如果本地連接時,出現監聽錯誤,參考Linux中安裝Oracle11g后出現監聽的問題及解決辦法]
15、命令行模式靜默刪除
1、首先查看dbca的幫助信息
dbca -help
修改/home/oracle/response/dbca.rsp文件里以下幾個參數,下面三個參數根據建庫實際情況進行修改:
OPERATION_TYPE = "deleteDatabase"
SOURCEDB = "orcl"
SYSDBAUSERNAME = "sys"
SYSDBAPASSWORD = "123456"
然后運行:
dbca -silent -responseFile /home/oracle/response/dbca.rsp
各參數含義如下:
-silent 表示以靜默方式刪除
-responseFile 表示使用哪個響應文件,必需使用絕對路徑
RESPONSEFILE_VERSION 響應文件模板的版本,該參數不要更改
OPERATION_TYPE 安裝類型,該參數不要更改
SOURCEDB 數據庫名,不是全局數據庫名,即不包含db_domain
很簡單數據庫卸載完成了,請注意,只是數據庫卸載完了,數據庫軟件還是在的。
2、使用DBCA卸載數據庫
dbca -silent -delete Database -responseFile dbca.rsp
a.選項-silent表示靜默安裝,免安裝交互,大部分安裝信息也不輸出
b.選項-responseFile指定應答文件,要求用絕對路徑
總結
以上是生活随笔為你收集整理的Linux安装Oracle11G的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特征和工具概览(SQL Server 2
- 下一篇: Tomcat学习总结