為了省事,我們直接安裝開發者工具:
yum -y groupinstall 'Development Tools'
創建Oracle所需的用戶和用戶組:
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba oracle
修改Oracle用戶密碼:Oracle Oracle
上傳軟件:
Root用戶修改上傳文件的屬主:chown -R Oracle ./
解壓文件:unzip -q p10404530_112030_Linux-x86-64_1of7.zip
unzip -q p10404530_112030_Linux-x86-64_2of7.zip
安裝依賴包:rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
rpm -ivh flash-plugin-11.2.202.291-release.x86_64.rpm
關閉防火牆並查看防火牆狀態:
Service iptables status
修改內核參數:
vi /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
kernel.panic_on_oops = 1
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
修改用戶限制
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/login
在末尾添加:
session required /lib64/security/pam_limits.so
創建oracle安裝目錄:
mkdir -p /u01/app/oracle/product/11.2.0/db_1
chown -R oracle:oinstall /u01
chmod -R 755 /u01/app/oracle
chown -R oracle:oinstall /home/oracle
設置環境變量
su - oracle(騷年,懂不懂要細心!!!)
vi .bash_profile
注意一定也不要錯:
刪除上面的最后兩行PATH和export,然后添加一下內容保存:
export EDITOR=vi
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
umask 022
生效環境變量:
source /home/oracle/.bash_profile
Sync后重新啟動機器:reboot
安裝遠程桌面軟件:yum install xorg-x11-xauth,yum install -y xterm
配置oracle運行所需的java環境:
上傳軟件:
軟件解壓:tar -xf /usr/local/jdk-8u144linux(這是我的安裝路徑)
配置環境變量:(配置好后,需重啟機器)
export JAVA_HOME=/usr/local/jdk1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
啟動xstart
效果圖:
安裝小時鍾:
yum install xorg-x11-apps
解決xhost +命令未找到
yum whatprovides "*/xhost"
yum -y install xorg-x11-server-utils-7.7-14.el6.x86_64
創建oracle所需的交換分區:
dd if=/dev/zero of=/swap bs=1M count=4096
mkswap /swap
Swapon /swap
root:xhost +
Oracle:xclock
cd database
./runInstaller
我們沒花錢,沒有技術支持的,勾掉support password
點擊下一步
點擊yes,有時會出現下面界面,不出現也正常。
點擊下一步
選擇單實例
添加中英文
點擊默認的企業版
上面是$ORACLE_BASE目錄,寫/u01/app/oracle
下面是$ORACLE_HOME目錄,寫/u01/app/oracle/product/11.2.0/db_1
可以cd /u01/app/oracle/product/11.2.0/db_1 看目錄存不存在。
點擊下一步
這個目錄是用來裝gc的,點擊下一步。
分配組,用上述的,點擊下一步。
補包:yum -y install libai*
yum install compat-libstdc++-33*
yum install elfutils-libelf-devel
繼續安裝
點擊完成
彈出腳本頁面,大約5分鍾。
此時開一個新的終端,就用root用戶執行。
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh
第二個腳本敲回車就行。
點擊ok
安裝完畢。
可以進行dbca建庫或手工建庫。
手工建庫:
su - oracle(騷年,細心,細心,細心)
cd $ORACLE_BASE
或 cd /u01/app/oracle
mkdir oradata
注意權限
建錯了 rm -rf 可以刪文件夾重建。
在oradata下建目錄:
cd oradata
mkdir PROD
騷年注意權限!權限!權限!和組。
ls -l
如果不是755權限以及oracle 以及oinstall組就要改。
總結如下:
644 - rw- r-- r--
700 r代表4 w代表2 x代表1
755 d 代表目錄,從第二個開始算 三位一算
777 簡單
2-4參數:屬於user
5-7參數:屬於group
8-10參數:屬於others
chown -R oracle:oinstall /u01/app/oracle/oradata/PROD
chmod -R 755 PROD
cd PROD
mkdir disk1 disk2 disk3 disk4 disk5 dump
mkdir –p是連父目錄一起創建。
ls -lt
注意調整創建的PROD的讀寫權限:
chmod 755 disk1 disk2 disk3 disk4 disk5 dump
cd $ORACLE_HOME/dbs
vi initPROD.ora
內容
memory_target=800m
db_name=PROD
control_files='/u01/app/oracle/oradata/PROD/disk1/control01.ctl',
'/u01/app/oracle/oradata/PROD/disk2/control01.ctl',
'/u01/app/oracle/oradata/PROD/disk3/control01.ctl'
undo_management=auto
undo_tablespace=undotbs
diagnostic_dest=/u01/app/oracle/oradata/PROD/dump
要用這個文件啟動一下
寫到這,已經可以啟動實例了。騷年開三個窗口(ORACLE用戶),第一個窗口執行
export ORACLE_SID=PROD
sqlplus '/as sysdba'
startup nomount;
show parameter dump
到第三個窗口:
cd /u01/app/oracle/oradata/PROD/dump/diag/rdbms/prod/PROD/trace
tail -f alert_PROD.log
看日志輸出。
3修改建庫腳本,並建庫
CREATE DATABASE PROD
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/PROD/disk1/redo01.log',
'/u01/app/oracle/oradata/PROD/disk2/redo01.log') SIZE 100M BLOCKSIZE 512,
GROUP 2 ('/u01/app/oracle/oradata/PROD/disk1/redo02.log',
'/u01/app/oracle/oradata/PROD/disk2/redo02.log') SIZE 100M BLOCKSIZE 512,
GROUP 3 ('/u01/app/oracle/oradata/PROD/disk1/redo03.log',
'/u01/app/oracle/oradata/PROD/disk2/redo03.log') SIZE 100M BLOCKSIZE 512
CHARACTER SET zhs16gbk
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '/u01/app/oracle/oradata/PROD/disk3/system01.dbf' SIZE 325M REUSE
SYSAUX DATAFILE '/u01/app/oracle/oradata/PROD/disk4/sysaux01.dbf' SIZE 325M REUSE
DEFAULT TABLESPACE users
DATAFILE '/u01/app/oracle/oradata/PROD/disk3/users01.dbf'
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE tempts
TEMPFILE '/u01/app/oracle/oradata/PROD/disk4/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE undotbs
DATAFILE '/u01/app/oracle/oradata/PROD/disk5/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
將語句放入處於nomount狀態的語句框中。
4 跑腳本
Sql下跑(第一個窗口建庫成功后跑)
@?/rdbms/admin/catalog.sql 1分鍾
@?/rdbms/admin/catproc.sql 5分鍾 這個腳本的輸出太多了。
@?/sqlplus/admin/pupbld.sql 不到一分鍾
注意最后一個最好以conn system/manager 運行,再切回來。
conn /as sysdba
select instance_name,status from v$instance;
可以配置密碼文件
alter user sys identified by oracle;
cd $ORACLE_HOME/dbs 不要寫錯,童鞋,否則無效。
orapwd file=orapwPROD password=oracle entries=3 force=y
可以測試一下:
sqlplus sys/oracle as sysdba
可以增加參數
在initPROD.ora中添加這些參數有好處。
local_listener='lsnr2'
undo_retention=5400
sessions=300
job_queue_processes=15
shared_server_sessions=200
DISPATCHERS = '(PROTOCOL=TCP)(DISPATCHERS=3)'
max_dispatchers=10
shared_servers=10
max_shared_servers=30
recyclebin=on
processes=150
想創建scott用戶
@?/rdbms/admin/utlsampl