您好,登錄后才能下訂單哦!
小Q:最近因為工作的變動,接觸了好多沒接觸的東西,一直在學習和熟悉業務,期間最有收獲的就屬于接觸了除mysql之外的數據庫,首先對oracle的安裝記錄一次。
建議:第一次安裝的朋友們,不要順著我的來,將安裝包上傳后,直接解壓執行./runInstaller,根據報錯去處理問題,這樣會更深入一層次的了解oracle。
oracle 和 mysql 區別
1、oracle屬于大型數據庫,而mysql屬于中小型數據庫,oracle市場占有40%,mysql占20%;
2、oracle非開源,需付費,提供售后,而mysql開源免費,不過被oracle收購后,不知道未來走勢;
3、oracle支持大并發,大訪問量,支持完全事務處理,而mysql在innodb引擎的行級鎖后才支持;
4、oracle是由用戶決定內容,mysql是由數據庫決定內容;
5、oracle邏輯備份時不鎖表,mysql需鎖表,而且一致性不如oracle;
6、oracle需要手動提交執行,mysql默認自動提交;
7、oracle安裝需3G左右空間,mysql只需150多M;
8、oracle三方管理工具較多,mysql很少
安裝 oracle 服務
1、檢查并安裝必要的軟件包
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel
yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat ld-linux.so.2 unixODBC unixODBC-devel
yum install libXp libXp.i686 //否則會報java Exception
wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm
wget ftp://rpmfind.net/linux/opensuse/distribution/13.1/repo/oss/suse/i586/pdksh-5.2.14-948.1.2.i586.rpm 32位的
rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm --force --nodeps
2、檢查swap是否有16G
grep SwapTotal /proc/meminfo //若小于16G,執行下面
dd if=/dev/zero of=/data/swap bs=1G count=9
mkswap /data/swap && swapon /data/swap
vim /etc/fstab (add)
/data/swap swap swap defaults 0 0
mount -a
3、添加用戶和組
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle (oracleadmin)
4、配置內核參數
vim /etc/sysctl.conf
fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 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 = 1048586 | kernel.shmall = 2097152 //表示系統一次可以使用的共享內存總量(以頁為單位)。缺省值就是2097152,通常不需要修改 kernel.shmmax = 2147483648 //共享內存段的最大尺寸(字節)。缺省32M,對于oracle來說,該缺省值太低了,通常將其設置為2G kernel.shmmni = 4096 //用于設置系統范圍內共享內存段的最大數量。該參數的默認值是 4096 。通常不需要更改 kernel.sem = 250 32000 100 128 //表示設置的信號量 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default=4194304 //默認的接收窗口大小 net.core.rmem_max=4194304 //接收窗口的最大大小 net.core.wmem_default=262144 //默認的發送窗口大小 net.core.wmem_max=262144 |
sysctl -p // 使之立即生效
5、修改用戶限制
vim /etc/security/limits.conf
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 |
6、修改用戶驗證選項
vim /etc/pam.d/login
session required /lib64/security/pam_limits.so session required pam_limits.so |
7、修改用戶配置文件
vim /etc/profile
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi |
8、修改用戶
vim /home/oracle/.bash_profile
export ORACLE_BASE=/usr/local/oracle #oracle數據庫安裝目錄 export ORACLE_HOME=$ORACLE_BASE/product #oracle數據庫路徑 export ORACLE_SID=orcl #oracle #啟動數據庫實例名 export ORACLE_TERM=xterm #xterm窗口模式安裝 export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH #添加系統環境變量 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib #添加系統環境變量 export LANG=C #防止安裝過程出現亂碼 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK #設置Oracle客戶端字符集,必須與Oracle安裝時設置的字符集保持一致, |
mkdir -p /usr/local/oracle/product
chown -R oracle:oinstall /usr/local/oracle/
source /home/oracle/.bash_profile
注:云機器默認無法用ctrl+alt+f7切換至圖形界面,而且無gnom桌面,所以為了識別>256color,進行以下操作
yum groupinstall "X Window System"
##yum groupinstall "GNOME Desktop" //我試了下,注釋部分不安裝也可,你也可以試試
yum install xdpyinfo xorg-x11-server-utils-7.7-14.el7 #tigervnc-server //不適用vnc可以不安裝服務
##(root)vncserver && 密碼=vncserveradmin && export DISPLAY=localhost:1
##xhost + //讓所有IP可以介入
9、oracle用戶登錄,并測試環境變量是否成功
su - oracle
env | grep ORA //檢查環境變量是否設置生效
10、下載oracle,并安裝
linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip
解壓這倆安裝包,會出來個database目錄,進入該目錄
執行: ./runInstaller
11、若以xhell運行時,系統并配有xmanege程序,通過配置如下x11轉發(兩個11步,選一即可)
系統會自動識別并彈出圖形安裝界面,進行一系列安裝(不過最保險的是通過xmanager中的xbrowser啟動用戶終端,這樣只需要安裝好x11),如下 方式二vnc 服務安裝。
11、vnc的優勢流暢比xmanege快好多倍,以vnc方式安裝,我們需要用oracle用戶登錄終端,并開啟vncserver
su - oracle
開啟:vncserver :3 [vncserveradmin] //開啟以3命名的 X
關閉:vncserver -kill :3
下載vnc viewer https://www.realvnc.com/download/file/viewer.files/VNC-Viewer-6.0.2-Windows-32bit.exe
新建鏈接-->ip:會話號--->vnc密碼--->登錄密碼 登陸,進入 database目錄,并執行 ./runInstaller
12、下面的安裝方式 xmanege和vnc就一樣了,繼續下走。
13.去掉勾,懶得填,個人使用環境不需要自動接收Oracle的安全更新。
14.下一步,只安裝數據庫軟件,個人用不要那些玩意~~
15.選擇單例安裝,前面的所有配置均為單例安裝。
16、添加語言
17、默認安裝版本企業版-Enterprise Edition
18、確定數據軟件的安裝路徑,自動讀取前面/home/oracle/.bash_profile 中配置的值。
不知道作用是啥,就默認了,有時vnc報錯彈框特小,根本不知道報錯是什么,所以我用的還是xmanege,雖然很慢,但報錯信息全。如下
19、理論上要創建Database Operation(OSOPER)Group:oper ,個人用,懶得建,就使用dba用戶組
20、安裝檢查,按照提示信息一個一個解決。有些系統報錯是因為現有的包的版本比檢測要高,最后忽略即可。(點擊Check_Again 多檢查幾次)
21、準備完畢,fuck “Finish”開始安裝。
千萬不要以為這樣就完成了,好多網上教程到這就完成了,安裝過程的錯也解決了,但是進入sysdba啟動數據庫就會
就這樣耽誤了我好幾天的時間,一直重裝,去解決那不必要的錯誤,類似sem設置了oracle沒有識別到這種錯。。。
oracle不像mysql服務安裝好后,直接可以登錄,他需要單獨配置數據庫,讓sysdba有庫可登入。
另外為了讓客戶端可以登入,我們還要設置一下監聽服務端口1521,一般安裝后默認就開啟了。
配置監聽服務 和 數據庫
1、執行netmgr (配置你創建的監聽服務配置,監聽你創建的數據庫實例)
命令netca (主要用來配置監聽和配置NET服務名,以便遠程連接數據庫。)
執行 dbca (創建數據庫、配置現有庫選項、刪除數據庫、管理模板=configretion assistant)
2、設置現有的sid,默認是前面寫的,當然可以自己定義,只不過自定義之后還得手動改env
3、可以為每一個設一個密碼,也可以讓他們共用一個密碼,之后sys和system可以改的
4、數據庫文件安裝的位置,,最好是 $ORACLE_BASE 下
5、選擇備份快速恢復的目錄
6、chown oracle.oinstall /etc/oratab //再點擊ok
7、測試
sqlplus / as sysdba
SQL> create table z_test(id number,name varchar(20));
SQL> insert into z_test select 1,'a' from dual;
SQL> select * from z_test;
附加測試:
lsnrctl stop //停止監聽器
lsnrctl start //啟動監聽器
sqlplus /nolog //無密碼登陸
SQL> connect / as sysdba; //選擇oracle數據庫
SQL> shutdown immediate //立即停止數據庫實例
SQL> startup //啟動數據庫實例
==========================================================================
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。