CentOS下Oracle11g部署
一、環(huán)境要求
1.Oracle11G下載地址
https://www.oracle.com/cn/database/enterprise-edition/downloads/oracle-db11g-linux.html
2.虛擬機(jī)要求
內(nèi)存至少2G
處理器至少2個(gè)
根分區(qū)要大于20G(安裝oracle很占空間,空閑空間要足夠。踩過一次坑,安裝的時(shí)候提示根分區(qū)空間不足)
二、環(huán)境準(zhǔn)備
1.首先關(guān)閉firewalld和關(guān)閉selinux
關(guān)閉防火墻:[root@localhost ~]# systemctl stop firewalld
關(guān)閉防火墻自啟動(dòng):[root@localhost ~]# systemctl disable firewalld
關(guān)閉selinux:[root@localhost ~]# vi /etc/selinux/config
修改:SELINUX=disabled
?重啟linux:[root@localhost ~]# reboot
?
?查看selinux狀態(tài):[root@localhost ~]# setenforce 0
?
2.創(chuàng)建oracle數(shù)據(jù)庫的系統(tǒng)用戶和用戶組
組:[root@localhost ~]# groupadd dba
組:[root@localhost ~]# groupadd oinstall
用戶加組:[root@localhost ~]# useradd -g oinstall -G dba -m oracle
密碼:[root@localhost ~]# passwd oracle
(此處設(shè)置oracle密碼oracle)
3.創(chuàng)建oracle安裝目錄
安裝:[root@localhost ~]# mkdir -p /db/app/oracle/product/11.2.0
數(shù)據(jù):[root@localhost ~]# mkdir -p /db/app/oracle/oradata
數(shù)據(jù):[root@localhost ~]# mkdir -p /db/app/oracle/inventory
數(shù)據(jù):[root@localhost ~]# mkdir -p /db/app/oracle/flash_recovery_area
數(shù)據(jù):[root@localhost ~]# mkdir -p /db/oraInventory
配置:[root@localhost ~]# mkdir -p /db/etc
軟件包:[root@localhost ~]# mkdir -p /db/orapackage
4.修改內(nèi)核參數(shù)
修改內(nèi)核:[root@localhost ~]# vi /etc/sysctl.conf
(在末尾添加)
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
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
使配置參數(shù)生效:[root@localhost ~]# sysctl -p
5.設(shè)置用戶限制,提高軟件運(yùn)行性能
設(shè)置限制:[root@localhost ~]# 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
oracle hard stack 32768
6.配置用戶的環(huán)境變量
配置:[root@localhost ~]# vi /home/oracle/.bash_profile
(在末尾添加)
export ORACLE_BASE=/db/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
使配置參數(shù)生效:[root@localhost ~]# source /home/oracle/.bash_profile
7.安裝oracle數(shù)據(jù)庫所需要的軟件包
yum源安裝:[root@localhost ~]# yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel ksh
使用rpm驗(yàn)證是否安裝成功(沒啥提示的就成功,提示package pdksh is not installed沒影響):
[root@localhost ~]# rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel ksh | grep "not installed"
安裝壓縮:[root@localhost orapackage]# yum install -y unzip zip
Oracle安裝包拷貝到/db/orapackage后進(jìn)入/db/orapackage下解壓:
[root@localhost orapackage]# cd /db/orapackage
[root@localhost orapackage]# ls
[root@localhost orapackage]# unzip linux.x64_11gR2_database_1of2.zip -d /db/orapackage/
[root@localhost orapackage]# unzip linux.x64_11gR2_database_2of2.zip -d /db/orapackage/
8.目錄授權(quán)
[root@localhost orapackage]# chown -R oracle:oinstall /db/app/oracle
[root@localhost orapackage]# chmod -R 775 /db/app/oracle
[root@localhost orapackage]# chown -R oracle:oinstall /db/oraInventory
[root@localhost orapackage]# chown -R oracle:oinstall /db/orapackage
9.文件拷貝到指定目錄
[root@localhost orapackage]# cp /db/orapackage/database/response/* /db/etc/
(dbca.rsp是用來創(chuàng)建數(shù)據(jù)庫的、db_install.rsp是用來安裝Oracle軟件的、netca.rsp是用來創(chuàng)建監(jiān)聽器的)
10.修改db_install.rsp文件內(nèi)容
修改后的參考:
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=centos-oracle
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/db/app/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/db/app/oracle/product/11.2.0
ORACLE_BASE=/db/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=true
oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.CLUSTER_NODES=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=ORCL
oracle.install.db.config.starterdb.SID=ORCL
oracle.install.db.config.starterdb.characterSet=ZHS16GBK
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=2048
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=oracle
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false
oracle.install.db.config.starterdb.dbcontrol.emailAddress=
oracle.install.db.config.starterdb.dbcontrol.SMTPServer=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=??
SECURITY_UPDATES_VIA_MYORACLESUPPORT=
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
11.修改后重啟:[root@localhost etc]# reboot
12.切換成oracle用戶執(zhí)行安裝
[root@localhost ~]# su - oracle
[oracle@localhost ~]$ cd /db/orapackage/database/
[oracle@localhost database]$ ./runInstaller -silent -responseFile /db/etc/db_install.rsp -ignorePrereq
(窗口一靜默安裝,切換窗口二用root用戶查看圖中框中日志,安裝很長)
13.在root用戶下執(zhí)行
[root@localhost logs]# cd /db/app/oracle/inventory/logs
[root@localhost logs]# ls
進(jìn)入目錄下查看當(dāng)天日期下的安裝日志:
[root@localhost logs]# tailf installActions*.log
14.窗口一提示安裝完成,需要切換窗口二用root用戶運(yùn)行.sh文件
[root@localhost logs]# sh /db/app/oracle/inventory/orainstRoot.sh
?[root@localhost logs]# sh /db/app/oracle/product/11.2.0/root.sh
?15.修改dbca.rsp文件:
修改后的dbca.rsp參考:
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
#全局?jǐn)?shù)據(jù)庫的名字=SID+主機(jī)域名
GDBNAME = "ORCL"
#數(shù)據(jù)庫的SID
SID = "ORCL"
TEMPLATENAME = "General_Purpose.dbc"
#SYS管理員密碼
SYSPASSWORD = "111111"
#SYSTEM管理員密碼
SYSTEMPASSWORD = "111111"
DATAFILEDESTINATION =/db/app/oracle/oradata
RECOVERYAREADESTINATION=/db/app/oracle/flash_recovery_area/
#數(shù)據(jù)字符集
CHARACTERSET = "ZHS16GBK"
#設(shè)置內(nèi)存為總內(nèi)存的80%
TOTALMEMORY = "6553"
[createTemplateFromDB]
SOURCEDB = "myhost:1521:orcl"
SYSDBAUSERNAME = "system"
TEMPLATENAME = "My Copy TEMPLATE"
[createCloneTemplate]
SOURCEDB = "orcl"
TEMPLATENAME = "My Clone TEMPLATE"
[DELETEDATABASE]
SOURCEDB = "orcl"
[generateScripts]
TEMPLATENAME = "New Database"
GDBNAME = "orcl11.us.oracle.com"
[CONFIGUREDATABASE]
[ADDINSTANCE]
DB_UNIQUE_NAME = "orcl11g.us.oracle.com"
NODELIST=
SYSDBAUSERNAME = "sys"
[DELETEINSTANCE]
DB_UNIQUE_NAME = "orcl11g.us.oracle.com"
INSTANCENAME = "orcl11g"
SYSDBAUSERNAME = "sys"
16.修改完成后重啟:[root@localhost logs]# reboot
17.切換成oracle用戶:[root@localhost ~]# su - oracle
18.創(chuàng)建監(jiān)聽:(這一步搞完之后記得將服務(wù)器重啟!)
[oracle@localhost ~]$ source .bash_profile
[oracle@localhost ~]$ netca /silent /responsefile /db/etc/netca.rsp
19.(切換到窗口二使用root用戶安裝netstat命令不然查看無法操作)
[root@localhost ~]# yum install net-tools
20.查看監(jiān)聽端口:
[oracle@localhost ~]$ netstat -tunlp | grep 1521
?21.建數(shù)據(jù)庫:[oracle@localhost oracle]$ dbca -silent -responseFile /db/etc/dbca.rsp
22.關(guān)閉和重啟服務(wù)器:
關(guān)閉監(jiān)聽:[oracle@localhost ~]$ lsnrctl stop
重啟:[oracle@localhost ~]$ exit
[root@localhost ~]# reboot
23.重啟后切換成oracle用戶:[root@localhost ~]# su - oracle
24.生效:[oracle@localhost ~]$ source .bash_profile
25.開啟監(jiān)聽:[oracle@localhost ~]$ lsnrctl start
?26.查看監(jiān)聽:[oracle@localhost ~]$ netstat -tunlp | grep 1521
(登錄之前先執(zhí)行下面CP指令)
登錄:[oracle@localhost ~]$ sqlplus / as sysdba
SQL> startup
查看實(shí)例:SQL> select status from v$instance;
27.先執(zhí)行這里不然會(huì)報(bào)錯(cuò):
[oracle@localhost ~]$ cp /db/app/oracle/admin/ORCL/pfile/init.ora.524202294336?/db/app/oracle/product/11.2.0/dbs/initorcl.ora
(手動(dòng)敲+Tab補(bǔ)全,標(biāo)紅每個(gè)系統(tǒng)不一樣,處理報(bào)錯(cuò)完成后操作后面登錄操作)
28.登錄:[oracle@localhost ~]$ sqlplus / as sysdba
29.啟動(dòng):SQL> startup
30.查看實(shí)例:SQL> select status from v$instance;
31.建立用戶:SQL> create user shun identified by cnbi123;
例子:create user brdb_sdhs identified by cnbi123;
32.使其不受限制:SQL> alter user shun account unlock;
例子:alter user brdb_sdhs account unlock;
33.賦權(quán):SQL> grant connect,resource,dba to shun;
例子:grant connect,resource,dba to brdb_sdhs;
34.創(chuàng)建表空間(unlimited不限制,100M代表100M空間)
SQL> alter user shun?quota unlimited on users;
例子:alter user brdb_sdhs?quota?unlimited?on users;
或者初始表空間2M,超過每次遞增2M,最大容量60M:
create tablespace my_01 logging datafile '/db/app/oracle/oradata/ORCL/my_01.dbf' size 2M autoextend on next 2M maxsize 60M extent management local;
表空間授予用戶:alter user brdb_sdhs identified by cnbi123 default tablespace my_01;
?34.在桌面中打開Navicat Premium 15連接數(shù)據(jù)庫:
總結(jié)
以上是生活随笔為你收集整理的CentOS下Oracle11g部署的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring-boot-starter
- 下一篇: 密钥远程登录与scp