編輯:關於android開發
基於VMwarevCenter Server中的Linux RedHat 6.4 安裝Oracle 11GR2 11.2.0.4 RAC集群
其中public和private要劃分到不同的網段。保證安全傳輸
[root@Zracnode1~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4localhost4.localdomain4
::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6
10.2.13.80 zracnode1
10.2.13.81 zracnode2
10.2.13.82 zracnode1-vip
10.2.13.83 zracnode2-vip
10.2.12.140 zracnode1-priv
10.2.12.141 zracnode2-priv
10.2.13.142 zrac-scan
10.2.13.143 zrac-scan
10.2.13.144 zrac-scan
*.安裝的操作系統是LinuxRedhat 6.4
*.磁盤劃分配置
磁盤目錄
磁盤大小
/
30GB
swap
16GB
/u01
100GB
共享磁盤配置有多種方式,nfs,磁盤陣列直接映射劃分,我這裡采用的是通過vmware vCenter server上的共享磁盤技術,操作步驟如下:
3.1. 需要對SCSI 控制器,進行配置。對總線配置為[物理]模式。參數解釋如下:
選項
描述
無
其他虛擬機不能共享虛擬磁盤。
虛擬
同一台服務器上的虛擬機可以共享虛擬磁盤。
物理
任何服務器上的虛擬機均可共享虛擬磁盤。
3.2 新建SCSI controller 1控制器,並設置相關參數,VmwarevCenter操作頁面如下:
3.3 新建硬盤,硬盤類型為[Thick provision eager zeroed].並且設置virtual Device Node為[SCSI(1:0)].在設置磁盤模式為[Independent-Persistent].操作頁面如下:
3.4 添加已存在磁盤,在ZRAC02節點上面,添加磁盤。操作頁面如下:
掛載鏡像配置yum
mount -oloop -t iso9660 /u01/software/rhel-server-6.4-x86_64-dvd.iso /u01/iso
[root@Zracnode1u01]# cat /etc/yum.repos.d/rhel-source.repo
[Server]
name=Server
baseurl=file:///u01/iso
gpgcheck=0
gpgkey=file:///u01/iso/RPM-GPG-KEY-redhat-release
VNC在Linux上的安裝
#yuminstall tigervnc-server
#vncserver #該命令在服務器端啟動一個VNC進程。允許一個
VNC View連接進來;如果需要多個View連接到服務器,需要多次執行上述命令;
Password: # 為了不想任何人都可以任意遙控此計算機。因此當第1次啟動VNC server時,會要求設置網絡遙控的密碼。
Verify: # 驗證密碼;
進入root主目錄下的.vnc隱含目錄, 找到 xstartup文件並編輯:
# cd/root/.vnc
# vi xstartup
# twm& (注釋掉該行)
startkde& (添加該行)
# killallXvnc
#vncserver
[root@rac01network-scripts]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4localhost4.localdomain4
::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6
10.2.13.80 Zracnode1
10.2.13.81 Zracnode2
10.2.13.82 Zracnode1-vip
10.2.13.83 Zracnode2-vip
10.2.13.140 Zracnode1-priv
10.2.13.141 Zracnode2-priv
10.2.13.142 Zrac-scan
groupadd -g500 oinstall
groupadd -g501 dba
groupadd -g502 oper
groupadd -g503 asmadmin
groupadd -g504 asmoper
groupadd -g505 asmdba
useradd -goinstall -G dba,asmdba,oper oracle
useradd -goinstall -G asmadmin,asmdba,asmoper,oper,dba grid
檢測用戶oracle和grid
[root@rac1~]# id oracle
uid=500(oracle)gid=500(oinstall) groups=500(oinstall),501(dba),502(oper),505(asmdba)
[root@rac1~]# id grid
uid=501(grid)gid=500(oinstall) groups=500(oinstall),501(dba),502(oper),503(asmadmin),504(asmoper),505(asmdba)
對用戶oracle和grid設置密碼
[root@rac1~]# passwd oracle
[root@rac1~]# passwd grid
mkdir/u01/app
chown -Rgrid:oinstall /u01/app/
chmod -R 775/u01/app/
mkdir -p/u01/app/oraInventory
chown -Rgrid:oinstall /u01/app/oraInventory/
chmod -R 775/u01/app/oraInventory/
mkdir -p/u01/app/grid
mkdir -p/u01/app/oracle
chown -Rgrid:oinstall /u01/app/grid/
chown -Roracle:oinstall /u01/app/oracle/
chmod -R 775/u01/app/grid/
chmod -R 775/u01/app/oracle/
[root@rac01~]# vi /etc/sysctl.conf
# for oracle11g
fs.aio-max-nr= 1048576
fs.file-max =6815744
kernel.shmall= 2147483648
kernel.shmmax= 68719476736
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
使修改參數立即生效:
[root@rac01~]# /sbin/sysctl -p
[root@rac01~]# /etc/security/limits.conf
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
[root@rac01~]# /etc/pam.d/login
session required pam_limits.so
[root@rac01 ~]#/etc/profile
if [ $USER ="oracle" ] || [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ];then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
serviceiptables stop
chkconfigiptables off
chkconfigiptables --list
setenforce 0
sed -i's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
rpm -q --qf'%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' 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 \
sysstat \
unixODBC \
grid用戶:
[grid@rac01 ~]# vi .bash_profile
export ORACLE_SID=+ASM1/+ASM2
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/grid/11.2
export PATH=$PATH:$ORACLE_HOME/bin
oracle用戶:
[oracle@rac01 ~]# vi .bash_profile
export ORACLE_SID=racdb1/racdb2
export ORACLE_UNQNAME=$ORACLE_SID
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/11.2/db_1
export PATH=$PATH:$ORACLE_HOME/bin
[root@rac01 ~]# fdisk /dev/sdb
劃分效果如下:
---------------------------------------------------------------------------
Device Boot Start End Blocks Id System
/dev/sdb1 1 132 1060258+ 83 Linux //CRS1 900M
/dev/sdb2 133 264 1060290 83 Linux //CRS2 900M
/dev/sdb3 265 396 1060290 83 Linux //CRS3 900M
/dev/sdb4 397 13054 101675385 5 Extended
/dev/sdb5 397 3008 20980858+ 83 Linux //DATA1 30GB
/dev/sdb6 3009 5620 20980858+ 83 Linux //DATA2 30GB
/dev/sdb7 5621 8232 20980858+ 83 Linux //DATA3 30GB
/dev/sdb8 8233 9538 10490413+ 83 Linux //REC1 30GB
/dev/sdb9 9539 13054 28242238+ 83 Linux //REC2 30GB
[root@rac02software]# rpm -ivh kmod-oracleasm-2.0.6.rh1-2.el6.x86_64.rpm
warning:kmod-oracleasm-2.0.6.rh1-2.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, keyID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:kmod-oracleasm ########################################### [100%]
[root@rac02 software]# rpm -ivhoracleasm-support-2.1.8-1.el6.x86_64.rpm
warning: oracleasm-support-2.1.8-1.el6.x86_64.rpm:Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
Preparing... ########################################### [100%]
1:oracleasm-support ########################################### [100%]
[root@rac02 software]# rpm -ivhoracleasmlib-2.0.4-1.el6.x86_64.rpm
warning:oracleasmlib-2.0.4-1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key IDec551f03: NOKEY
Preparing... ########################################### [100%]
1:oracleasmlib ###########################################[100%]
RAC01執行下列操作:
[root@rac1 ~]# /etc/init.d/oracleasmconfigure
[root@rac1 ~]# /etc/init.d/oracleasmconfigure
Default user to own the driver interface[]: grid
Default group to own the driver interface[]: asmadmin
Start Oracle ASM library driver on boot(y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n)[y]: y
Writing Oracle ASM library driverconfiguration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLibdisks: [ OK ]
RAC02執行下列操作:
[root@rac02 software]# /etc/init.d/oracleasmconfigure
Default user to own the driver interface[]: grid
Default group to own the driver interface[]: asmadmin
Start Oracle ASM library driver on boot(y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n)[y]: y
Writing Oracle ASM library driverconfiguration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLibdisks: [ OK ]
以下操作在rac其中一個節點上進行,我在rac1上操作
[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk CRS1 /dev/sdb1
[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk CRS2 /dev/sdb2
[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk CRS3 /dev/sdb3
[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk DATA1 /dev/sdb5
[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk DATA2 /dev/sdb6
[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk DATA3 /dev/sdb7
[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk REC1 /dev/sdb8
[root@rac1 ~]# /etc/init.d/oracleasmcreatedisk REC2 /dev/sdb9
以下操作在另一個節點上進行,RAC2上操作
[root@rac02 software]# oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
[root@Zracnode2 software]# oracleasmlistdisks
CRS1
CRS2
CRS3
DATA1
DATA2
DATA3
REC1
REC2
為ssh和scp創建連接
ls -l /usr/local/bin/ssh
ls -l /usr/local/bin/scp
不存在則創建
[root@rac01 ~]# /bin/ln -s /usr/bin/ssh/usr/local/bin/ssh
[root@rac01 ~]# /bin/ln -s /usr/bin/scp/usr/local/bin/scp
為grid用戶配置SSH:
在每個節點上:
[root@rac01 ~]# su – grid
[grid@rac01 ~]# mkdir ~/.ssh
[grid@rac01 ~]#cd .ssh
[grid@rac01 ~]# ssh-keygen -t rsa
[grid@rac01 ~]# ssh-keygen -t dsa
在節點1上:
[grid@rac01 ~]# touch authorized_keys
[grid@rac01 ~]# ssh rac01 cat/home/grid/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01 ~]# ssh rac02 cat/home/grid/.ssh/id_rsa.pub >> authorized_keys
[grid@rac01 ~]# ssh rac01 cat /home/grid/.ssh/id_dsa.pub>> authorized_keys
[grid@rac01 ~]# ssh rac02 cat/home/grid/.ssh/id_dsa.pub >> authorized_keys
[grid@rac01 ~]# scp authorized_keysrac02:/home/grid/.ssh/
分別在每個節點上:
[grid@rac01 ~]# ssh rac01 date
[grid@rac01 ~]# ssh rac02 date
[grid@rac01 ~]# ssh-agent $SHELL
[grid@rac01 ~]# ssh-add
為oracle用戶配置SSH:
在每個節點上:
[root@rac01 ~]# su – oracle
[oracle@rac01 ~]# mkdir ~/.ssh
[oracle@rac01 ~]#cd .ssh
[oracle@rac01 ~]# ssh-keygen -t rsa
[oracle@rac01 ~]# ssh-keygen -t dsa
在節點1上:
[oracle@rac01 ~]# touch authorized_keys
[oracle@rac01 ~]# ssh rac01 cat /home/oracle/.ssh/id_rsa.pub>> authorized_keys
[oracle@rac01 ~]# ssh rac02 cat /home/oracle/.ssh/id_rsa.pub>> authorized_keys
[oracle@rac01 ~]# ssh rac01 cat /home/oracle/.ssh/id_dsa.pub>> authorized_keys
[oracle@rac01 ~]# ssh rac02 cat /home/oracle/.ssh/id_dsa.pub>> authorized_keys
[oracle@rac01 ~]# scp authorized_keysrac02:/home/oracle/.ssh/
分別在每個節點上:
[oracle@rac01 ~]# ssh rac01 date
[oracle@rac01 ~]# ssh rac02 date
[oracle@rac01 ~]# ssh-agent $SHELL
[oracle@rac01 ~]# ssh-add
[root@rac01 ~]#vi /etc/ntp.conf
...
#server 0.centos.pool.ntp.org
#server 1.centos.pool.ntp.org
#server 2.centos.pool.ntp.org
server xxx.xxx.xxx.xxx
#server127.127.1.0 # local clock
#fudge 127.127.1.0 stratum 10
[root@rac01 ~]# vi /etc/sysconfig/ntpd
# Drop root to id 'ntp:ntp' by default.
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"
# Set to 'yes' to sync hw clock aftersuccessful ntpdate
SYNC_HWCLOCK=yes
# Additional options for ntpdate
NTPDATE_OPTIONS=""
啟動
[root@rac01 ~]# chkconfig ntpd on
[root@rac01 ~]# service ntpd start
[root@rac01 ~]# ntpdate -d -u xxx.xxx.xxx.xxx
啟用name service cache daemon
[root@rac01 ~]# chkconfig --level 35 nscdon
[root@rac01 ~]# service nscd restart
-----------後面兩個階段,分別是GI安裝和oracle安裝,未完待續!~
TabLayout和ViewPager簡單實現頁卡的滑動,tablayoutviewpager首先需要在當前的module中的build Gradle的 dependen
Android6.0權限管理 Android 6.0 Marshmallow首次加入了運行時權限管理,這對用戶來說,可以更好的了解、控 制 app 涉及到的權限。然而對開
Binder中的asInterface解析,binderasinterface在使用AIDL通信的時候,在Stub類中都會生成一個asInterface函數,以《Andr
編譯器開發系列--Ocelot語言1.抽象語法樹,--ocelot語法從今天開始研究開發自己的編程語言Ocelot,從《自制編譯器》出發,然後再自己不斷完善功能並優化。