分分钟搭建Oracle环境
生活随笔
收集整理的這篇文章主要介紹了
分分钟搭建Oracle环境
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在Oracle運維中,有一個很基礎(chǔ)的工作就是安裝數(shù)據(jù)庫軟件,而這個工作一般少則需要花費個把小時,多則半天。
如果我們有大批量的服務(wù)器安裝任務(wù),那么這種時候你肯定會希望從這種重復(fù)性勞動中解放出來,人工操作還是會有或多或少的差錯,而且耗時。
所以我簡單寫了下面的腳本,可以很流暢的安裝好Oracle軟件,很多基礎(chǔ)工作都統(tǒng)一配置好了。
比如目前我的腳本結(jié)構(gòu)如下:
-rw-r--r-- 1 root root 4422615040 Jun? 7 14:34 11204.tar
-rw-r--r-- 1 root root??????? 608 Jun? 7 15:19 1_ora_yum.sh
-rw-r--r-- 1 root root??????? 695 Jun? 7 14:34 2_os_init.sh
-rw-r--r-- 1 root root??????? 185 Jun? 7 15:24 3_fd_init.sh
-rw-r--r-- 1 root root???????? 58 Jun? 7 15:06 4_ora_profile.sh
-rw-r--r-- 1 root root??????? 142 Jun? 7 15:36 5_init_orahome.lst
-rw-r--r-- 1 root root??????? 216 Jun? 7 16:07 6_install_db.sh
-rw-r--r-- 1 root root??????? 546 Jun? 7 15:06 bash_profile
-rw-r--r-- 1 root root??????? 110 Jun? 7 16:07 install_all.sh
-rw-r--r-- 1 root root?????? 1444 Jun? 7 14:34 rhel6-source.repo
rhel6-source.repo是一個yum配置文件,是一個統(tǒng)一的yum源。
其它的腳本內(nèi)容都是固定的模式統(tǒng)一配置。
1_ora_yum.sh是yum源安裝的軟件包
2_os_init.sh是配置系統(tǒng)級的操作,比如創(chuàng)建組,創(chuàng)建用戶,資源配置等
3_fd_init.sh是配置文件系統(tǒng)級的目錄,分區(qū)
4_ora_profile.sh是配置profile的內(nèi)容,其實模板已經(jīng)準(zhǔn)備好了bash_profile,到時候直接拷貝即可。
5_init_orahome.lst是配置安裝包的路徑
6_install_db.sh是克隆安裝數(shù)據(jù)庫軟件
其實上面的幾個步驟看起來挺多,其實操作過程單一,很多配置完全可以統(tǒng)一。
可以統(tǒng)一放到腳本install_all.sh里面,只運行這個腳本,其實實踐下來,安裝一套軟件,幾分鐘完全可以搞定。
腳本1的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 1_ora_yum.sh
cp rhel6-source.repo /etc/yum.repos.d
yum list
yum install binutils? -y
yum install compat-db?? -y
yum install control-center? -y
yum install gcc? -y
yum install gcc-c? -y
yum install gcc-c++? -y
yum install glibc?? -y
yum install glibc-common? -y
yum install gnome-libs?? -y
yum install libstdc? -y
yum install libstdc++-devel? -y
yum install make? -y
yum install pdksh? -y
yum install sysstat -y
yum install xscreensaver -y
yum install libaio-devel? -y
yum install libaio? -y
yum install setarch? -y
yum install openmotif? -y
yum install compat-gcc? -y
yum install compat-libstdc? -y
yum install gnome? -y
腳本2 內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 2_os_init.sh
groupadd oinstall
groupadd dba
chattr -i /etc/passwd /etc/shadow
useradd -g oinstall -G dba? oracle
echo "oracle?????????? soft??? nproc?????????? 2047" >> /etc/security/limits.conf
echo "oracle?????????? hard??? nproc?????????? 16384"? >> /etc/security/limits.conf
echo "oracle?????????? soft??? nofile????????? 65536"? >> /etc/security/limits.conf
echo "oracle?????????? hard??? nofile????????? 65536"? >> /etc/security/limits.conf
echo "oracle?????????? soft??? stack?????????? 10240"? >> /etc/security/limits.conf
echo "oracle?????????? soft??? memlock???????? unlimited"? >> /etc/security/limits.conf
echo "oracle?????????? hard??? memlock???????? unlimited"? >> /etc/security/limits.conf
腳本3的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 3_fd_init.dh
cd /
mkdir -p /home/U01
ln -s /home/U01 U01
mkdir -p /U01/app/oracle/product/11.2.0.4
chown -R oracle:oinstall /U01/app/oracle
chown -R oracle:oinstall /U01/app/oracle/product/11.2.0.4
腳本4的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 4_ora_profile.sh
cp /root/ora_init/bash_profile /home/oracle/.bash_profile
腳本5的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 5_init_orahome.lst
mv /root/ora_init/11204.tar /U01/app/oracle/product
chown? oracle:oinstall /U01/app/oracle/product/11204.tar
cp 6_install_db.sh /home/oracle
腳本6的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 6_install_db.sh
cd /U01/app/oracle/product
tar -xvf /U01/app/oracle/product/11204.tar
perl $ORACLE_HOME/clone/bin/clone.pl ORACLE_BASE=$ORACLE_BASE ORACLE_HOME=$ORACLE_HOME? ORACLE_HOME_NAME=OraDb11g_home1
bash_profile的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# 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
export ORACLE_BASE=/U01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4
export ORACLE_SID=accdb0
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export TNS_ADMIN=/U01/app/oracle/product/11.2.0.4/network/admin/
umask 022
stty erase ^h
所有的腳本就這些了。安裝的時候可以1個步驟1個步驟來完成,或者統(tǒng)一運行install_all.sh完成前5步,最后的安裝軟件的部分還是建議在oracle用戶下安裝。
如果我們有大批量的服務(wù)器安裝任務(wù),那么這種時候你肯定會希望從這種重復(fù)性勞動中解放出來,人工操作還是會有或多或少的差錯,而且耗時。
所以我簡單寫了下面的腳本,可以很流暢的安裝好Oracle軟件,很多基礎(chǔ)工作都統(tǒng)一配置好了。
比如目前我的腳本結(jié)構(gòu)如下:
-rw-r--r-- 1 root root 4422615040 Jun? 7 14:34 11204.tar
-rw-r--r-- 1 root root??????? 608 Jun? 7 15:19 1_ora_yum.sh
-rw-r--r-- 1 root root??????? 695 Jun? 7 14:34 2_os_init.sh
-rw-r--r-- 1 root root??????? 185 Jun? 7 15:24 3_fd_init.sh
-rw-r--r-- 1 root root???????? 58 Jun? 7 15:06 4_ora_profile.sh
-rw-r--r-- 1 root root??????? 142 Jun? 7 15:36 5_init_orahome.lst
-rw-r--r-- 1 root root??????? 216 Jun? 7 16:07 6_install_db.sh
-rw-r--r-- 1 root root??????? 546 Jun? 7 15:06 bash_profile
-rw-r--r-- 1 root root??????? 110 Jun? 7 16:07 install_all.sh
-rw-r--r-- 1 root root?????? 1444 Jun? 7 14:34 rhel6-source.repo
rhel6-source.repo是一個yum配置文件,是一個統(tǒng)一的yum源。
其它的腳本內(nèi)容都是固定的模式統(tǒng)一配置。
1_ora_yum.sh是yum源安裝的軟件包
2_os_init.sh是配置系統(tǒng)級的操作,比如創(chuàng)建組,創(chuàng)建用戶,資源配置等
3_fd_init.sh是配置文件系統(tǒng)級的目錄,分區(qū)
4_ora_profile.sh是配置profile的內(nèi)容,其實模板已經(jīng)準(zhǔn)備好了bash_profile,到時候直接拷貝即可。
5_init_orahome.lst是配置安裝包的路徑
6_install_db.sh是克隆安裝數(shù)據(jù)庫軟件
其實上面的幾個步驟看起來挺多,其實操作過程單一,很多配置完全可以統(tǒng)一。
可以統(tǒng)一放到腳本install_all.sh里面,只運行這個腳本,其實實踐下來,安裝一套軟件,幾分鐘完全可以搞定。
腳本1的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 1_ora_yum.sh
cp rhel6-source.repo /etc/yum.repos.d
yum list
yum install binutils? -y
yum install compat-db?? -y
yum install control-center? -y
yum install gcc? -y
yum install gcc-c? -y
yum install gcc-c++? -y
yum install glibc?? -y
yum install glibc-common? -y
yum install gnome-libs?? -y
yum install libstdc? -y
yum install libstdc++-devel? -y
yum install make? -y
yum install pdksh? -y
yum install sysstat -y
yum install xscreensaver -y
yum install libaio-devel? -y
yum install libaio? -y
yum install setarch? -y
yum install openmotif? -y
yum install compat-gcc? -y
yum install compat-libstdc? -y
yum install gnome? -y
腳本2 內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 2_os_init.sh
groupadd oinstall
groupadd dba
chattr -i /etc/passwd /etc/shadow
useradd -g oinstall -G dba? oracle
echo "oracle?????????? soft??? nproc?????????? 2047" >> /etc/security/limits.conf
echo "oracle?????????? hard??? nproc?????????? 16384"? >> /etc/security/limits.conf
echo "oracle?????????? soft??? nofile????????? 65536"? >> /etc/security/limits.conf
echo "oracle?????????? hard??? nofile????????? 65536"? >> /etc/security/limits.conf
echo "oracle?????????? soft??? stack?????????? 10240"? >> /etc/security/limits.conf
echo "oracle?????????? soft??? memlock???????? unlimited"? >> /etc/security/limits.conf
echo "oracle?????????? hard??? memlock???????? unlimited"? >> /etc/security/limits.conf
腳本3的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 3_fd_init.dh
cd /
mkdir -p /home/U01
ln -s /home/U01 U01
mkdir -p /U01/app/oracle/product/11.2.0.4
chown -R oracle:oinstall /U01/app/oracle
chown -R oracle:oinstall /U01/app/oracle/product/11.2.0.4
腳本4的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 4_ora_profile.sh
cp /root/ora_init/bash_profile /home/oracle/.bash_profile
腳本5的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 5_init_orahome.lst
mv /root/ora_init/11204.tar /U01/app/oracle/product
chown? oracle:oinstall /U01/app/oracle/product/11204.tar
cp 6_install_db.sh /home/oracle
腳本6的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# cat 6_install_db.sh
cd /U01/app/oracle/product
tar -xvf /U01/app/oracle/product/11204.tar
perl $ORACLE_HOME/clone/bin/clone.pl ORACLE_BASE=$ORACLE_BASE ORACLE_HOME=$ORACLE_HOME? ORACLE_HOME_NAME=OraDb11g_home1
bash_profile的內(nèi)容如下:
[root@dbcon_WT01 ora_init]# 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
export ORACLE_BASE=/U01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4
export ORACLE_SID=accdb0
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export TNS_ADMIN=/U01/app/oracle/product/11.2.0.4/network/admin/
umask 022
stty erase ^h
所有的腳本就這些了。安裝的時候可以1個步驟1個步驟來完成,或者統(tǒng)一運行install_all.sh完成前5步,最后的安裝軟件的部分還是建議在oracle用戶下安裝。
總結(jié)
以上是生活随笔為你收集整理的分分钟搭建Oracle环境的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从创建数据库到备份恢复还原详解
- 下一篇: 国家“十三五”重点出版规划获批