檢查Linux系統配置(內存、硬盤)神馬的就不說 ,一般都是滿足的,除非是哥們你用自己電腦搞著玩。。。
?
安裝oracle 10g 數據庫 ? 1、? 下載 oracle文件到/root目錄并解壓 cd /root wget –c http://nadmin.haott.com/oracle_linux32.zip (此處我的安裝包在另一臺服務器上,故需下載到被安裝的服務器) unzip ./oracle_linux32.zip(解壓) ? 2、 參數設置 OS參數要求vi /etc/sysctl.conf , 在行末添加以下內容 kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default=262144 net.core.rmem_max=262144 net.core.wmem_default=262144 net.core.wmem_max=262144 運行sysctl -p應用以上參數, /sbin/sysctl -p ,結果如下:
? |
vi /etc/security/limits.conf 行末添加以下內容: #use for oracle oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 ? vi /etc/pam.d/login 行末添加以下內容 session required /lib/security/pam_limits.so 注意:如果你的操作系統是x64的則為session required /lib64/security/pam_limits.so 否則系統拒絕登錄 ? vi /etc/selinux/config 確保以下內容,關閉SELIINUX SELINUX=disabled ? 如果是c shell,則環境變量文件 /etc/csh.login的修改值如下(此處若不確定,跳過): if ( \$USER == "oracle" ) then limit maxproc 16384 limit descriptors 65536 umask 022 endif ? 在/etc/profile里添加如下行 vi /etc/profile export LIBXCB_ALLOW_SLOPPY_LOCK=true if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi 使用命令source profile使環境變量生效 source /etc/profile ? 3、 創建用戶及組 groupadd oinstall groupadd dba useradd -g oinstall -G dba oracle passwd oracle ? 4、 創建目錄 mkdir -p /u01/app/oracle/product/10.2.0/db_1 chown -R oracle.oinstall /u01 chmod -R 755 /u01 ? 5、 創建oracle profile文件 su – oracle vi /home/oracle/.bash_profile 用oracle用戶編輯加入以下內容 #Oracle Settings umask 022; export ORACLE_BASE=/u01/app/oracle; export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_SID=TSH1; export PATH=$ORACLE_HOME/bin:$PATH; export LANG=en_US.UTF-8 source .bash_profile 然后再設置本地字符集型export LANG=en_US.UTF-8 ? 6、 安裝依賴包 (此處選擇在線安裝,因為某個包可能會依賴其它幾個包) 以root用戶運行 su root cd /etc/yum.repos.d wget http://www.linuxidc.com/files/2011/05/06/CentOS-Base.repo 通過yum在線安裝 yum -y install openmotif yum -y install compat-db yum -y install compat-gcc-34 yum -y install compat-libstdc++-33 yum -y install compat-libstdc++-296 yum -y install sysstat yum -y install libXp libaio yum -y install libaio-devel yum -y install compat-libgcc* yum -y install compat-gcc* --skip-broken yum -y install libXp yum -y install libXtst ? 7、 修改vi /etc/redhat-release文件,如下: Red Hat Enterprise Linux AS release 4 (Nahant Update 4) ? 8、 配置inittab vi /etc/inittab 把 id:5:initdefault: 修改為 id:3:initdefault 注意:改為3是沒有圖形化界面的 5是有的 ? 9、配置靜態ip (此步可選擇跳過,我安裝時沒有執行) linux系統在安裝時若無更改,系統的網絡默認為DHCP,若想將IP設置為靜態的IP該怎么辦呢?如安裝 Oracle時,就被要求配置靜態IP(Oracle吃內存,吃硬盤容量,需要一堆rpm包支持,IP也是那么的挑剔,苦哇~)。 今天在自己的筆記本上對RedHat Linux進行了上網配置,一切還算順利。原來在Linux下配置網絡也挺簡單的。 步驟如下: 配置文件位于: /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ROOTPROTO=static HWADDR=00:0C:29:A3:2C:FB ONBOOT=yes NETMASK=255.255.255.0 -- redhat linux 子網掩碼 IPADDR=192.168.0.6 -- redhat linux 的IP地址 GATEWAY=192.168.0.1 -- redhat linux的默認網關跟windows主機的默認網關是一致的 TYPE=Ethernet USERCTL=no IPV6INIT=no PEERDNS=yes 將上面的IPADDR和GATEWAY換成自己的就可以了。也可以設置MAC的邏輯地址(地址欺騙),在上面的配置文件中加一行 HWADDR=你想填的MAC地址。 最后運行兩個命令使新的設置生效 /sbin/ifdown ifcfg-eth0 /sbin/ifup ifcfg-eth0 ? 還需配置DNS的主機名為 localhost.localdomain 主DNS解析域名為:202.96.209.5 第二DNS為:202.96.209.133 DNS 搜尋路徑:ocaldomain 不然在安裝的過程中同樣會報checking network configuration requirements is: Not executed的錯誤提示 還需修改 vi /etc/hosts 文件 在安裝oracle 10g的過程中,遇到了checking network configuration requirements is: Not executed的錯誤提示。發現是 /etc/hosts中沒有指定靜態ip地址導致,檢測/etc/hosts發現果真如此,修改如下配置 127.0.0.1 localhost.localdomain localhost #::1 192.168.18.192 localhost6.localdomain6 localhost6 ---192.168.18.192是linux redhat 的ip地址不是windows ip 地址 重新檢測,顯示正常 需要將 虛擬機 連接方式設置為:橋接,而不是NAT,Host-only 的連接方式,不然也不能上網 ? 10、 配置enterprise.rsp文件 mv /root/database /home/oracle/ chown –R oracle:oinstall /home/oracle/database vi /home/oracle/database/response/enterprise.rsp 修改以下值 RESPONSEFILE_VERSION=2.2.1.0.0 UNIX_GROUP_NAME="oinstall" ORACLE_HOME_NAME="OraDb10g_home1" ORACLE_HOME="/u01/app/oracle/product/10.2.0/db_1" SHOW_INSTALL_PROGRESS_PAGE= true SHOW_END_OF_INSTALL_MSGS= true COMPONENT_LANGUAGES={"zh_CN"} s_nameForDBAGrp= "dba" s_nameForOPERGrp="dba" INSTALL_TYPE="EE" n_configurationOption=3 RESTART_SYSTEM=false RESTART_REMOTE_SYSTEM=false 說明:這幾項要視情況而定比如說 UNIX_GROUP_NAME="oinstall" 和s_nameForDBAGrp= "dba" s_nameForOPERGrp="dba"還有環境變量都要參照前面自己定義好的來 ? 11、正式安裝 su - oracle /home/oracle/database/runInstaller -silent -responseFile /home/oracle/database/response/enterprise.rsp
? 12、接下來按提示操作, root身份登錄 su root sh /u01/app/oracle/oraInventory/orainstRoot.sh sh /u01/app/oracle/product/10.2.0/db_1/root.sh ? 13、安裝網絡監聽器 vi /home/oracle/database/response/netca.rsp 修改以下值: INSTALL_TYPE=""custom"" #安裝的類型 LISTENER_NUMBER=1 #監聽器數量 LISTENER_NAMES={"LISTENER"} #監聽器的名稱列表 LISTENER_PROTOCOLS={"TCP;1521"} # 監聽器使用的通訊協議列表 LISTENER_START=""LISTENER"" # 監聽器啟動的名稱 ? su - oracle $ORACLE_HOME/bin/netca /silent /responseFile /home/oracle/database/response/netca.rsp 注意:此處可能會有錯誤 oracle 需要的軟件包不全。 請根據 1 中列出的軟件包,確保所有的軟件包都已經正確安裝( 2 ) 6 中對 gennttab 文件的修改不正確,本人就是沒有去掉 n 后的空格導致了該錯誤。 如下報的缺少libXtst包 Exception in thread "main" java.lang.UnsatisfiedLinkError: /u01/app/oracle/product/10.2.0/db_1/jdk/jre/lib/i386/libawt.so: libXtst.so.6: cannot open shared object file: 用yum下載安裝即可解決 [root@oraclebk ~]# yum install libXp ? 14、修改 dbstart vi $ORACLE_HOME/bin/dbstart ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle 改為: ORACLE_HOME_LISTNER=$ORACLE_HOME 確保 數據庫 啟動時,網絡監聽器同時啟動。 ? 15、增加數據實例 vi /home/oracle/database/response/dbca.rsp 根據數據庫建立方式的不同編輯不同的數據庫庫選項。 比如在本次安裝過程中設置了下列參數:( 注意下面參數視情況而定啦不要照抄該選項原文件都有說明的) RESPONSEFILE_VERSION = "10.0.0" OPERATION_TYPE = "createDatabase" GDBNAME = "orcl" # 數據庫全局名稱 SID = "TSH1" #這個sid 必須要和前面的/home/oracle/.bash_profile文件中的sid相同 # 注意:一定要注意上面兩個變量設置的兩個值是不同的,但大多數情況下設置是相同的,相同值我沒有測試,感興趣的可以試一下(相同值會更容易理解) TEMPLATENAME = "New_Database.dbt" SYSPASSWORD = "system" # SYS 用戶的初始密碼 SYSTEMPASSWORD = "system" #SYSTEM 用戶的初始密碼 DATAFILEDESTINATION ="/u01/app/oracle/oradata/" RECOVERYAREADESTINATION="/u01/app/oracle/flash_recovery_area" STORAGETYPE=FS CHARACTERSET = "ZHS16GBK" #數據庫字符集(中文為 ZHS16GBK ) MEMORYPERCENTAGE = "40" SCRIPTDESTINATION ="/u01/app/oracle/admin/ora10g/scripts" EMCONFIGURATION=”LOCAL” SYSMANPASSWORD = "system" DBSNMPPASSWORD = "system" ? su – oracle $ORACLE_HOME/bin/dbca -silent -responseFile /home/oracle/database/response/dbca.rsp 執行結果: Creating and starting? Oracle ?instance 1% complete 4% complete Creating database files 8% complete Creating data dictionary views 9% complete 10% complete 12% complete 13% complete 14% complete 15% complete 17% complete 18% complete 20% complete 21% complete Adding Oracle JVM 22% complete 28% complete 34% complete 40% complete 42% complete Adding Oracle Data Mining 43% complete 44% complete 46% complete Adding Oracle Text 47% complete 49% complete 50% complete Adding Oracle XML DB 52% complete 53% complete 54% complete 58% complete Adding Oracle Intermedia 59% complete 60% complete 71% complete Adding Oracle OLAP 72% complete 73% complete 74% complete 75% complete Adding Oracle Spatial 76% complete 77% complete 78% complete 83% complete Adding Enterprise Manager Repository 84% complete 86% complete 88% complete Completing Database Creation 89% complete 90% complete 91% complete 95% complete 99% complete 100% complete Look at the log file "/u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/dbca/orcl/orcl.log" for further details. 最后提示創建成功后 數據庫創建成功后需要修改一些信息: vi /etc/oratab THS1:/ u01/app/oracle/product/10.2.0/db_1:N 改為: TSH1:/u01/app/oracle/product/10.2.0/db_1:Y 保證數據庫實例能自動啟動。 ? 16、創建數據庫和監聽器自啟動的服務 su - root cd /etc/rc.d/init.d/ touch oradbstart vi oradbstart 腳本內容如下: #!/bin/bash # chkconfig: 345 99 10 # description: Startup Script for Oracle Databases # /etc/rc.d/init.d/oradbstart export ORACLE_BASE=/u01/app/oracle/ export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1 export ORACLE_SID=TSH1 export PATH=$ORACLE_HOME/bin:$PATH case "$1" in start) su oracle -c $ORACLE_HOME/bin/dbstart touch /var/lock/oracle echo "OK" ;; stop) echo -n "Shutdown Oracle: " su oracle -c $ORACLE_HOME/bin/dbshut rm -f /var/lock/oracle echo "OK" ;; *) echo "Usage: 'basename $0' start|stop" exit 1 esac exit 0 ? 17、修改數據腳本的權限 su - root chown oracle.oinstall /etc/rc.d/init.d/oradbstart chmod 775 /etc/rc.d/init.d/oradbstart ? 18、把oradbstart 服務添加到 chkconfig 中(此處可不執行) chkconfig --add oradbstart chkconfig --list oradbstart ? 19、啟動數據庫實例 su - oracle $ORACLE_HOME/bin/dbstart ? 20、測試: su - oracle sqlplus /nolog SQL> connect /as sysdba SQL> startup 測試成功。 ? 21、修改兩個配置文件(此處比較重要,如果不改,可能在本地用plsql遠程連接數據庫連接失?。? 修改tnsnames.ora文件 vi /u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = AY1311041658000357deZ)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) EXTPROC_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = HOSTNAME)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PLSExtProc) ) ) 改為: ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 115.29.147.229)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) ? EXTPROC_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 115.29.147.229)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PLSExtProc) ) ) 注:標紅部分請替換實際ip ? 修改listener.ora文件 SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1) (PROGRAM = extproc) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = AY1311041658000357deZ)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0)) ) ) 改為: SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1) (SID_NAME = TSH1) ) ) LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST=115.29.147.229)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0)) ) ) 注:標紅部分為修改部分,請替換實際ip ? 22、重啟oracle su – oracle -bash-3.2$ sqlplus "/as sysdba" SQL*Plus: Release 10.2.0.1.0 - Production on Sat Dec 7 15:44:19 2013 SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> quit -bash-3.2$ $ORACLE_HOME/bin/lsnrctl stop -bash-3.2$ $ORACLE_HOME/bin/lsnrctl start -bash-3.2$ sqlplus "/as sysdba" SQL> startup open SQL> quit ? 完成。 ? 截止到上面其實oracle安裝已經完成,下面代碼就是創建表空間、用戶、數據庫導入了,基于完整性,一并貼出來。 ? 23、用 系統 用戶創建表空間、用戶等 su - oracle sqlplus “/as sysdba” #創建表空間 create TEMPORARY TABLESPACE AFINITOR_TEMP TEMPFILE '/u01/app/oracle/oradata/orcl/AFINITOR_TEMP.ORA' SIZE 32M AUTOEXTEND ON NEXT 32M MAXSIZE 2048M EXTENT MANAGEMENT LOCAL; #創建臨時表空間 create TABLESPACE AFINITOR LOGGING DATAFILE '/u01/app/oracle/oradata/orcl/AFINITOR.DBF' SIZE 32M AUTOEXTEND ON NEXT 32M MAXSIZE 2048M EXTENT MANAGEMENT LOCAL; #創建用戶 create user afinitor identified by afinitor default tablespace AFINITOR temporary tablespace AFINITOR_TEMP; #給用戶授權 grant resource,connect,EXP_FULL_DATABASE,IMP_FULL_DATABASE,CREATE SESSION to afinitor; grant dba to afinitor; #授權導入導出 GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,DBA,CONNECT,RESOURCE,CREATE SESSION TO afinitor; ? 24、數據導入 cd /home wget –c http://nadmin.haott.com/afinitor_db.dmp (此處是在另一服務器下載所需要的數據庫dmp文件) su – oracle imp afinitor/afinitor@orcl file=/home/afinitor_data_20131206.dmp full=y ignore=y #導入命令 |
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
