Oracle日志路徑
也可以在oracle數據庫中查找
SQL> show parameter background_dump_dest
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
background_dump_dest string /usr/local/oracle/app/oracle/d
iag/rdbms/custom/orcl/trace
[oracle@oracle ~]$ cd /usr/local/oracle/app/oracle/diag/rdbms/custom/orcl/trace/
[oracle@oracle trace]$ tail -f alert_orcl.log
這里安裝oracle是使用的圖形化安裝oracle
首先要安裝linux圖形化界面
詳情請查看以下:“linux安裝X Window開啟圖形化界面”
Linux圖形化界面安裝完成后,接下來要配置一下oracle的用戶環境
1.安裝相關的軟件包
yum install -y binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl sysstat libXp unixODBC unixODBC-devel
2.編輯vim /etc/sysctl.conf文件,末尾添加如下行
fs.file-max = 6815744
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.wmem_default = 262144
net.core.wmem_max = 1048576
3.編輯vim /etc/security/limits.conf文件,在末尾添加下列行
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
編輯 vim /etc/pam.d/login文件末尾添加如下行
session required pam_limits.so
4.建立相關的安裝目錄
[root@oracle ~]# mkdir /usr/local/oracle
[root@oracle ~]# mkdir /usr/local/oracle/app
[root@oracle ~]# mkdir /usr/local/oracle/app/oracle
5.建立dba,oinstall組與oracle用戶
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba -d /usr/local/oracle oracle
passwd oracle
chown -R oracle:oinstall /usr/local/oracle/
6.更改系統版本,並關閉selinux
#vim /etc/redhat-release
將里面的內容太更改為redhat-4
目前oracle不支持高版本的,先改成這個,裝好了,再改回來
運行#setenforce 0 關閉selinux、
7.設置oracle環境變量
#vim /home/oracle/.back_profile
[root@oracle oracle]# cat .back_profile
#Oracle Setting
TMP:/tmp; export TMP
TMPDIR=$TMP;export TMPDIR
ORACLE_BASE=/usrlocal/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.0.2/dbhome;
export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
ORACLE_TERM=xterm;export ORACLE_TERM
PATH=$PATH:$ORACLE_HOME/bin;export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib;
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JREORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/bash" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
oracle的安裝前配置已經完成了,下面我們來配置下VNC服務,臉上圖形界面開始安裝了
配置VNC服務器,並啟動開啟圖形界面
1.先配置下/etc/sysconfig/vncservers這個配置文件。
在文件的末尾添加如下:
VNCSERVERS="2:oracle"
VNCSERVERARGS[2]="-geometry 800x600"
VNCSERVERS="1:root"
VNSERVERARGS[1]="-geometry 800x600"
制動oracle和root用戶的啟動端口及啟動的分辨率
2.配置oracle用戶的密碼,及啟動的桌面環境
(1)配置密碼我們用vncpasswd命令
#vncpasswd oracle
然后輸入兩次密碼,可完成密碼的配置
(2)配置oracle用戶登陸時啟用的桌面環境
#vim /root/.vnc/xstartup
修改最后一行的twm& 為gnome-session(GNOME風格的桌面環境)或startkde & (KDE風格的桌面環境),
這個環境看你裝的是哪個,裝那個就改成哪個。保存退出。
防火牆設置
Vncserver啟動后,默認是5901端口號,這里也跟sysctl設置有關系。可以根據實際啟動的端口進行設置,這個步驟可以在vncserver啟動志強,也可以在啟動之后
#vim /etc/sysconfig/iptables 找到下面這行
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
在這之后添加:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCE
PT
重啟防火牆,重點是開放5901端口。
最后,我們啟動vnc服務
#service vncserver start
#netstat -ntlp
本地遠程連接vnc的桌面環境
vnc鏈接是需要java環境支持的或者使用vnc鏈接客戶端。
安裝vnc客戶端
在windows下安裝vnc客戶端,下載地址http://pan.baidu.com/s/1pJFkIIB;
軟件包名稱 RealVNC_cngr.rar,
(1)windows安裝vnc
點擊下一步,選擇“I accept the agreement”
安裝路徑,可以默認,也可以更改
下一步之后再次填寫目錄
下一步,直到安裝完成
安裝成功后,會彈出一個畫面框
提示你選擇Visit our web site to obtain a license key或Apply a license key you already possess。前者的意思是訪問RealVNC官網去獲得一個密鑰,而后者的意思就是在下一步操作中直接輸入密鑰
這里提供幾個親測可用的注冊碼:
BQ24G-PDXE4-KKKRS-WBHZE-F5RCA ---這里我用的這個注冊碼
BQ24G-PDXE4-KKKRS-WBHZE-F5RCA
8ZEZH-QPANM-NX3A5-8C4TS-8B97A
7AB4X-3YNXF-C5MRR-59DJG-7HGNA
UPL8P-CN2MT-85ERA-N3E3B-GERDA
X24XP-V247M-HEMNV-ZTMZK-FNB7A
執行vncserver命令
New 'oracle:2 (root)' desktop is oracle:2 (裝置編號)------一定要記住這行,稍后會用到
(2)安裝完成之后(在windows上運行VNC Viewer)
VNC server:輸入vnc server的ip地址(及裝置編號)
注意:vnc連接linux服務器時,linux服務器首先要登陸到圖形化界面
Vnc客戶端的IP地址填寫的是linux服務器的ip地址
Password密碼是用vncpasswd設置的密碼
我這里當時設置的是oracle,所以這里密碼填寫oracle
注意:vnc端口,vnc給瀏覽器的端口是5800+N
給vncserver的端口號是5900+N,N是設定的display號
安裝成功!!!!
到這一步就是vnc連接服務端了,那么接下來就該安裝oracle11g了
打開centos中的終端
System----preferences-------keyboard shortcuts
找到“run a terminal” 按下shift+ctrl+c
Ctenos下安裝oracle11g R2
1.將下載好的oracle數據庫包解壓縮。
wget http://v.yingsun.net/cobra/download/linux.x64_11gR2_database_1of2.zip
wget http://v.yingsun.net/cobra/download/linux.x64_11gR2_database_2of2.zip
注意:切換用戶時-bash-4.1$
從root用戶切換到oracle用戶時報錯
解決方法: 在改變用戶家目錄時usermod帶上參數-d -m
如果用戶已經創建好了,首先將它刪除
Userdel -rf oracle
Useradd oracle ---t添加用戶
#usermod -md /usr/local/oracle/app/ oracle
#su - oracle
就成功了!!!!
2.切換到oracle用戶下,進行安裝文件解壓的目錄:
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
3.運行安裝文件下的./runInstaller程序,運行后它將檢查下你的影狐配置環境。
如果配置有錯的話,他會提示,然后安裝上面步驟更改正確即可。
#Cd /usr/local/oracle/app/oracle/database
#./runlnstaller
這個直接勾選上就可以了,下一步
選擇install database software only,點擊next
選擇”single instance database istallation “,點擊Next
1.single instance database istallation --單實例應用集群
2.real application clusters databases installation 實際應用集群數據庫安裝
在Available Languages中點選English、Simplified Chinese、Traditional Chinese,點擊兩個框中間的>,將選中的語言加入到右邊的Selected Languages中,然后點擊Next
按照實際情況,選擇企業版本,如下圖
填寫oracle的軟件路徑和基本路徑,如下圖:
選擇安裝日志目錄,如下圖所示
選擇dba組
注意:以下這一步不需要點任何,直接點擊”finish”就可以了
安裝中,這個時間比較漫長
需要等待中,大概20分鍾左右
這一步之后到達最后之后
意思就是需要root權限執行以下命令:
#/oracle/oraInventory/orainstRoot.sh
#/oracle/product/10.2.0/db_1/root.sh
cd /usr/local/oralnventory/
#sh orainstRoot.sh
#cd /usr/local/oracle/app/oracle/product/11.2.0/dbhome
#sh root.sh
然后點擊close,結束
創建數據庫(oracle使用dbca建立數據庫)
數據庫的創建使用oracle用戶進行(假設數據庫名稱為powerdes,在實際操作中,斜體的powerdes需要替換為實際定義的數據庫名),按下面步驟創建數據庫。
安裝需要在圖形界面(在控制台或者用X-Window工具軟件)。打開一個終端窗口,執行如下命令:dbca,如下圖所示:
#[oracle@oracle ~]$ find / -name netmgr
/usr/local/oracle/app/oracle/product/11.2.0/dbhome/bin/netmgr
# dbca
報錯信息:
解決方法:
[oracle@oracle ~]$ cat .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
ORACLE_BASE=/usr/local/oracle/app/oracle;export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome;export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
if [ $USER = "oracle" ] || ]$USER = "grid" ];
then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
(2)DISPLAY not set. Set DISPLAY environment variable, then re-run.
解決辦法:export DISPLAY=172.1960.102:1.0
Ip為你的服務器ip地址
設置DISPLAY為ip地址加上1.0
Database Configuration Assistant圖形界面啟動。標題同時指明了步驟的編號和步驟的名稱。在步驟名稱為Welcome的歡迎窗口,直接點擊next。
等待下一步NEXT
選擇Custom Database
輸入數據庫名稱,默認全局和SID 是一樣的
Global Database Name框:輸入前面確定的數據庫名
SID框:自動出現和數據庫名相同的內容作為數據庫實例名,單實例情況下不作改動
繼續默認
報錯:configuring database with database control requires a listener to be configured in the current oracle home. you need to run nerca to configure a listener before you can proceed otherwise you may choose to continue without database control configuration
解決辦法:監聽未啟動.#lsnrctl start ---啟動監聽
添加口令,隨便,我這里添了個lanmao
因為口令很隨便,所以會有提示,不去管它,點“是”
下一步即可
以下:
storage 存儲
Controlfile 控制文件
Tablespaces 表空間
Datafiles 數據文件
Redo log groups 重做日志組
點擊“finish”
點擊“ok”
Global Database Name ----全局數據庫名
Database Configuration Type -------數據庫配置類型
SID ------SID
Management option Type -------管理選項類型
Storage Type --------存儲類型:文件系統
Memory Configuration Type ---------內存配置類型:自動內存管理
開始創建數據庫,需要點時間。
點擊OK按鈕,有報錯說/etc/oratab讀取錯誤,報錯如下圖所示
所以去建立下這個目錄
[root@powerlong4 rpms]# mkdir /etc/oratab
[root@powerlong4 rpms]#
[root@powerlong4 rpms]# chown -R oracle.oinstall /etc/oratab
等待35分鍾后,數據庫創建完畢,之后點擊,如下所示:
9,簡單驗證
[oracle@powerlong4 ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.2.0.1.0 Production on Sat Jan 24 14:51:10 2015
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> startup
報錯(1)ORA-01078: failure in processing system parameters & LRM-00109: could not open parameter file
解決辦法:
發現在/usr/local/oracle/app/oracle/product/11.2.0/dbhome/dbs/下找不到initorcl.ora文件,於是去$ORACLE_HOME/admin/Custom/pfile 或者find / -name pfile 查找“pfile”這個文件;找到init.ora.3102017201154這個文件,將它拷貝到/usr/local/oracle/app/oracle/pruduct/11.2.0/dnhome/dbs/目錄下,並重命名為“initorcl.ora”后,重啟數據。問題解決!!!
# cd /usr/local/oracle/app/oracle/admin/Custom/pfile
#cp init.ora.3102017201154 /usr/local/oracle/app/oracle/product/11.2.0/dbhome/dbs/
# cd /usr/local/oracle/app/oracle/product/11.2.0/dbhome/dbs/
#cp init.ora.3102017201154 initorcl.ora
#sqlplus / as sysdba
#SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system
報錯(2)ORA-00845: MEMORY_TARGET not supported on this system
解決辦法:
根據網上搜索給出的解釋就是/dev/shm/過小導致錯誤,而且/dev/shm是一個tmpfs的文件系統,該文件系統是基於內存的,大小是隨着物理內存的大小動態改變的,一般為物理內存的一半;tmpfs文件系統可以使用物理內容,也可以使用swap。
那么根據這么內容,來處理問題
首先看一下物理內存和swap的大小
[root@night ~]# free -m
修改tmpfs大小,用root用戶
[oracle@oracle dbs]$ cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Tue Feb 29 12:02:06 2000
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg_datatem-lv_root / ext4 defaults 1 1
UUID=69d24d15-5478-46ce-8d9c-7050518b4af6 /boot ext4 defaults 1 2
/dev/mapper/vg_datatem-lv_home /home ext4 defaults 1 2
/dev/mapper/vg_datatem-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
shmfs /dev/shm/ tmpfs size=7g 0
重新掛載/dev/shm
[root@oracle ~]# umount /dev/shm/
[root@oracle ~]# mount /dev/shm
[root@oracle ~]# mount
/dev/mapper/vg_datatem-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
/dev/mapper/vg_datatem-lv_home on /home type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
[root@oracle ~]# df - Th /dev/shm
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 16507200 0 16507200 0% /dev/shm
現在重新啟動oracle服務(切換到oracle用戶)
[root@oracle ~]# su - oracle
[oracle@oracle ~]$ df -Th /dev/shm
Filesystem Type Size Used Avail Use% Mounted on
tmpfs tmpfs 16G 0 16G 0% /dev/shm
[oracle@oracle ~]$ sqlplus /nolog
SQL> conn sys / as sysdba
SQL> startup
ORACLE instance started.
Total System Global Area 1.3495E+10 bytes
Fixed Size 2218032 bytes
Variable Size 6845106128 bytes
Database Buffers 6576668672 bytes
Redo Buffers 71471104 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode
SQL> show parameter memory
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 12928M
memory_target big integer 12928M
shared_memory_address integer 0
/dev/shm大於memory_max_target的大小。
SQL> shutdown abort ----強制停止數據庫
SQL> startup -----啟動數據庫
SQL> shutdown immediate
ORA-01507: database not mounted
解決辦法:
網上搜索文檔給出的答案是關於lk<SID>文件造成的。
查看該文件
[oracle@oracle ~]$ cd /usr/local/oracle/app/oracle/product/11.2.0/dbhome/dbs/
[oracle@oracle dbs]$ ls
hc_Custom.dat init.ora lkCUSTOM
hc_DBUA0.dat init.ora.3102017201154 orapwCustom
hc_orcl.dat initorcl.ora spfileCustom.ora
[oracle@oracle dbs]$ fuser -u lkCUSTOM
lkCUSTOM: 11558(oracle) 11564(oracle) 11568(oracle) 11570(oracle) 11574(oracle) 11576(oracle) 11578(oracle) 11580(oracle) 11582(oracle) 11584(oracle) 11586(oracle) 11588(oracle) 11684(oracle) 11709(oracle) 11811(oracle) 11813(oracle) 20083(oracle) 25535(oracle)
果然該文件沒釋放,用fuser命令kill掉
[oracle@oracle dbs]$ fuser -k lkCUSTOM
lkCUSTOM: 11558 11564 11568 11570 11574 11576 11578 11580 11582 11584 11586 11588 11684 11709 11811 11813 20083 25535
[oracle@oracle dbs]$ fuser -u lkCUSTOM
然后:
[oracle@oracle dbs]$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Mon Apr 10 23:08:48 2017
Copyright (c) 1982, 2009, Oracle. All rights reserved.
SQL> conn / as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 1.3495E+10 bytes
Fixed Size 2218032 bytes
Variable Size 6845106128 bytes
Database Buffers 6576668672 bytes
Redo Buffers 71471104 bytes
Database mounted.
Database opened.
數據庫成功open
(1)SQL> create table z_test (id number,name varchar(20));
Table created.
(2)SQL> insert into z_test select 1,'a' from dual;
1 row created.
(3)SQL> select * from z_test;
ID NAME
---------- --------------------
1 a
SQL> commit;
Commit complete.
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@oracle ~]$ sqlplus / as sysdba ---進入數據庫
SQL> create user oracle identified by "lanmao"; ----創建用戶密碼
User created.
SQL> grant create session to oracle; 授權用戶
Grant succeeded.
SQL> grant create table to oracle;
Grant succeeded.
SQL> grant create tablespace to oracle;
Grant succeeded.
SQL> grant create view to oracle;
Grant succeeded.