linux7静默安装11GR2 RAC的方法是什么
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,这篇文章主要介绍"linux7静默安装11GR2 RAC的方法是什么",在日常操作中,相信很多人在linux7静默安装11GR2 RAC的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的
千家信息网最后更新 2025年01月31日linux7静默安装11GR2 RAC的方法是什么
这篇文章主要介绍"linux7静默安装11GR2 RAC的方法是什么",在日常操作中,相信很多人在linux7静默安装11GR2 RAC的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"linux7静默安装11GR2 RAC的方法是什么"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
vi /etc/hosts#public ip192.168.56.71 ora71192.168.56.72 ora72#private ip192.168.221.71 ora71-priv192.168.221.72 ora72-priv#vip192.168.56.73 ora71-vip192.168.56.74 ora72-vip#scan ip192.168.56.75 orascan
[root@ora71 ~]# systemctl stop firewalld[root@ora71 ~]# systemctl disable firewalldRemoved symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.[root@ora71 ~]# setenforce 0[root@ora71 ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config[root@ora71 ~]# getenforcePermissive[root@ora72 ~]# egrep -v "^#|^$" /etc/selinux/configSELINUX=disabledSELINUXTYPE=targeted
[root@ora71 ~]# vi /etc/sysctl.conffs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmmni = 4096kernel.shmall =18446744073692774399kernel.shmmax =18446744073692774399kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576
[root@ora71 ~]# vi /etc/security/limits.confgrid soft nproc 2047grid hard nproc 16384grid soft nofile 1024grid hard nofile 65536oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536
[root@ora71 ~]# vi /etc/pam.d/loginsession required /lib64/security/pam_limits.sosession required pam_limits.so
groupadd -g 1000 oinstallgroupadd -g 1001 dbagroupadd -g 1002 opergroupadd -g 1003 asmadmingroupadd -g 1004 asmopergroupadd -g 1005 asmdbauseradd -u 1000 -g oinstall -G dba,asmdba,oper oracleuseradd -u 1001 -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
mkdir -p /u01/app/gridmkdir -p /u01/app/gridhomemkdir -p /u01/app/oraclechown -R grid:oinstall /u01/app/gridchmod -R 755 /u01/app/gridchown -R grid:oinstall /u01/app/gridhomechmod -R 755 /u01/app/gridhomechown -R oracle:oinstall /u01/app/oraclechmod -R 755 /u01/app/oracle
#编辑参数文件
grid:vi ~/.bash_profileexport ORACLE_BASE=/u01/app/gridexport ORACLE_HOME=/u01/app/gridhome/product/11.2.0/grid_1export ORACLE_SID=+ASM1PATH=$ORACLE_HOME/bin:$PATHexport LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/binexport CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlibexport ORACLE_BASE=/u01/app/gridexport ORACLE_HOME=/u01/app/gridhome/product/11.2.0/grid_1export ORACLE_SID=+ASM2PATH=$ORACLE_HOME/bin:$PATHexport LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/binexport CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jliboracleexport ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1export ORACLE_SID=RACDB1PATH=$ORACLE_HOME/bin:$PATHexport LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/binexport CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlibexport ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1export ORACLE_SID=RACDB2PATH=$ORACLE_HOME/bin:$PATHexport LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/binexport CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
#配置ssh信任
grid:cd /home/gridmkdir ~/.sshchmod 700 ~/.sshssh-keygen -t rsassh-keygen -t dsacat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keyscat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keysssh ora72 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keysssh ora72 cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keysscp ~/.ssh/authorized_keys ora72:~/.ssh/authorized_keys#验证ssh ora72 date;ssh ora71 date;ssh ora72-priv date;ssh ora71-priv dateoraclecd /home/gridmkdir ~/.sshchmod 700 ~/.sshssh-keygen -t rsassh-keygen -t dsacat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keyscat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keysssh ora72 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keysssh ora72 cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keysscp ~/.ssh/authorized_keys ora72:~/.ssh/authorized_keys#验证ssh ora72 date;ssh ora71 date;ssh ora72-priv date;ssh ora71-priv date
yum -y install binutils compat-libstdc++-33* compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc* kernel-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libgomp libstdc++* libstdc++.i686 make sysstat unixODBC.i686 unixODBC.x86_64 unixODBC-devel.i686 unixODBC-devel.x86_64rpm -q compat-libstdc++-33 elfutils-libelf-devel binutils compat-libcap1 gcc gcc-c++ glibc glibc.i686 glibc-devel glibc-devel.i686 ksh libaio.i686 libaio libaio-devel.i686 libaio-devel libgcc.i686 libgcc libstdc++.i686 libstdc++ libstdc++-devel.i686 libstdc++-devel libXi.i686 libXi libXtst.i686 libXtst make sysstat unixODBC.i686 unixODBC unixODBC-devel unzip --qf '%{name}.%{arch}\n'
VBoxManage.exe createhd --filename "E:\Vbox\Vmechine\workspace\share_disk between71and72\asm1.vdi" --size 2048 --format VDI --variant FixedVBoxManage.exe createhd --filename "E:\Vbox\Vmechine\workspace\share_disk between71and72\asm2.vdi" --size 30720 --format VDI --variant FixedVBoxManage.exe storageattach CentOS_7-4_64bit_IP71 --storagectl "SATA" --port 1 --device 0 --type hdd --medium "E:\Vbox\Vmechine\workspace\share_disk between71and72\asm1.vdi" --mtype shareableVBoxManage.exe storageattach CentOS_7-4_64bit_IP71 --storagectl "SATA" --port 2 --device 0 --type hdd --medium "E:\Vbox\Vmechine\workspace\share_disk between71and72\asm2.vdi" --mtype shareableVBoxManage.exe modifyhd "E:\Vbox\Vmechine\workspace\share_disk between71and72\asm1.vdi" --type shareableVBoxManage.exe modifyhd "E:\Vbox\Vmechine\workspace\share_disk between71and72\asm2.vdi" --type shareableVBoxManage.exe storageattach CentOS_7-4_64bit_IP72 --storagectl "SATA" --port 1 --device 0 --type hdd --medium "E:\Vbox\Vmechine\workspace\share_disk between71and72\asm1.vdi" --mtype shareableVBoxManage.exe storageattach CentOS_7-4_64bit_IP72 --storagectl "SATA" --port 2 --device 0 --type hdd --medium "E:\Vbox\Vmechine\workspace\share_disk between71and72\asm2.vdi" --mtype shareable
udevadm info --query=all --name=/dev/sdb DEVPATH=/devices/pci0000:00/0000:00:0d.0/ata4/host3/target3:0:0/3:0:0:0/block/sdbudevadm info --query=all --name=/dev/sdc DEVPATH=/devices/pci0000:00/0000:00:0d.0/ata5/host4/target4:0:0/4:0:0:0/block/sdcvi /etc/udev/rules.d/99-oracle-asmdevices.rulesKERNEL=="sdb",ENV{DEVPATH}=="/devices/pci0000:00/0000:00:0d.0/ata4/host3/target3:0:0/3:0:0:0/block/sdb",SYMLINK+="oraasm-$env{DM_NAME}",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="sdc",ENV{DEVPATH}=="/devices/pci0000:00/0000:00:0d.0/ata5/host4/target4:0:0/4:0:0:0/block/sdc",SYMLINK+="oraasm-$env{DM_NAME}",OWNER="grid",GROUP="asmadmin",MODE="0660"##验证权限和属组ls -Ll /dev/mapper/*ls -Ll /dev/oraasm-*ls -Ll /dev/dm-*#多路径#/etc/multipath.confmultipaths { multipath { wwid 36006048cd70c3e37a4a85c04d0c79c6d alias data1 } multipath { wwid 36006048cb82e28ed3701a9e1eecb820a alias crs1 } multipath { wwid 3600601606a003a001eebdf56d80e0b2f alias data2 } multipath { wwid 3600601606a003a004aebdf56fce34966 alias data3 }}#配置udevcd /dev/mapperfor i in `ls mpath*`; do printf "%s %s\n" "$i" "$(udevadm info --query=all --name=/dev/mapper/$i |grep -i dm_uuid)"; donedata1 E: DM_UUID=mpath-36006048cd70c3e37a4a85c04d0c79c6dcrs1 E: DM_UUID=mpath-36006048cb82e28ed3701a9e1eecb820adata2 E: DM_UUID=mpath-3600601606a003a001eebdf56d80e0b2fdata3 E: DM_UUID=mpath-3600601606a003a004aebdf56fce34966[root@rac1 ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rulesKERNEL=="dm-*",ENV{DM_UUID}=="mpath-36006048cd70c3e37a4a85c04d0c79c6d",SYMLINK+="oraasm-$env{DM_NAME}",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="dm-*",ENV{DM_UUID}=="mpath-36006048cb82e28ed3701a9e1eecb820a",SYMLINK+="oraasm-$env{DM_NAME}",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="dm-*",ENV{DM_UUID}=="mpath-3600601606a003a001eebdf56d80e0b2f",SYMLINK+="oraasm-$env{DM_NAME}",OWNER="grid",GROUP="asmadmin",MODE="0660"KERNEL=="dm-*",ENV{DM_UUID}=="mpath-3600601606a003a004aebdf56fce34966",SYMLINK+="oraasm-$env{DM_NAME}",OWNER="grid",GROUP="asmadmin",MODE="0660"#重启udev服务systemctl restart systemd-udev-trigger.service##验证权限和属组ls -Ll /dev/mapper/*ls -Ll /dev/oraasm-*ls -Ll /dev/dm-*
[root@ora71 ~]# rpm -ivh /home/grid/grid/rpm/cvuqdisk-1.0.9-1.rpmPreparing... ################################# [100%]ls: cannot access /usr/sbin/smartctl: No such file or directory/usr/sbin/smartctl not found.error: %pre(cvuqdisk-1.0.9-1.x86_64) scriptlet failed, exit status 1error: cvuqdisk-1.0.9-1.x86_64: install failed[root@ora71 ~]# yum install smartmontools
./runcluvfy.sh stage -pre crsinst -n ora71,ora72 -fixup -verbose >> check.txt
#安装响应文件解释:
oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v11_2_0# 修改1:当前安装节点的计算机名称----------------------------------------------(重点注意1)ORACLE_HOSTNAME=rac1# 修改2:版本信息路径(路径相关可以不修改)INVENTORY_LOCATION=/u01/app/oraInventory# 修改3:语言,多选用,隔开(正常来说保持默认即可)SELECTED_LANGUAGES=en,zh_CN#4个选项提供,表示要做的操作# - CRS_CONFIG : To configure Grid Infrastructure for cluster# - HA_CONFIG : To configure Grid Infrastructure for stand alone server# - UPGRADE : To upgrade clusterware software of earlier release# - CRS_SWONLY : To install clusterware files only (can be configured for cluster# or stand alone server later)oracle.install.option=CRS_CONFIG# 修改4:grid 的 BASE 和 HOME 目录(路径相关可以不修改)ORACLE_BASE=/u01/app/gridORACLE_HOME=/u01/app/11.2.0/gridoracle.install.asm.OSDBA=asmdbaoracle.install.asm.OSOPER=asmoperoracle.install.asm.OSASM=asmadmin# 修改5:scan名称,和hosts对应--------------------------------------------------(重点注意2)oracle.install.crs.config.gpnp.scanName=rac-scan# 修改6:集群监听端口号---------------------------------------------------------(重点注意3)oracle.install.crs.config.gpnp.scanPort=1521# 修改7:cluster名称,可以保持默认oracle.install.crs.config.clusterName=rac-cluster#configureGNS为false,表示不配置GNS#autoConfigureClusterNodeVIP这个参数为配置GNS后续参数之一,如果不开启GNS,这里指定falseoracle.install.crs.config.gpnp.configureGNS=falseoracle.install.crs.config.gpnp.gnsSubDomain=oracle.install.crs.config.gpnp.gnsVIPAddress=oracle.install.crs.config.autoConfigureClusterNodeVIP=false# 修改8:节点信息,跟hosts对应---------------------------------------------------(重点注意4)oracle.install.crs.config.clusterNodes=rac1:rac1-vip,rac2:rac2-vip# 修改9:网卡信息和网段,对应ifconfig结果(两个节点的网卡名称需要一致)----------(重点注意5),1代表public,2代表private,3代表在群集中不使用该网卡oracle.install.crs.config.networkInterfaceList=eth0:10.0.1.0:1,eth2:11.11.11.0:2# 存储形式,使用ASM的话保持默认即可(可以不修改),2个值提供# - ASM_STORAGE# - FILE_SYSTEM_STORAGEoracle.install.crs.config.storageOption=ASM_STORAGE#这项只和windows有关,空着吧oracle.install.crs.config.sharedFileSystemStorage.diskDriveMapping=oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=oracle.install.crs.config.sharedFileSystemStorage.votingDiskRedundancy=NORMALoracle.install.crs.config.sharedFileSystemStorage.ocrLocations=oracle.install.crs.config.sharedFileSystemStorage.ocrRedundancy=NORMALoracle.install.crs.config.useIPMI=falseoracle.install.crs.config.ipmi.bmcUsername=oracle.install.crs.config.ipmi.bmcPassword=# SYS密码oracle.install.asm.SYSASMPassword=asmadmin# 修改10:表决盘名称(可以不修改)oracle.install.asm.diskGroup.name=OCR# 修改11:表决盘冗余选项(接受以下3个选项)-----------------------------------------(重点注意6)# HIGH 高冗余:最少5块磁盘,Oracle ASM默认提供三重镜像。可以容忍在不同故障组中丢失两个Oracle ASM磁盘。# NORMAL 正常冗余:最少3块磁盘,Oracle ASM默认提供双向镜像,这意味着镜像所有文件,以便每个范围有两个副本。容许丢失一个磁盘。# EXTERNAL 外部冗余:最少1块盘,由外部RAID提供冗余。oracle.install.asm.diskGroup.redundancy=NORMALoracle.install.asm.diskGroup.AUSize=1# 修改12:表决盘所使用的裸盘,根据需要修改------------------------------------------(重点注意7)oracle.install.asm.diskGroup.disks=/dev/raw/raw1,/dev/raw/raw2,/dev/raw/raw5oracle.install.asm.diskGroup.diskDiscoveryString=# ASMSNMP密码oracle.install.asm.monitorPassword=asmadminoracle.install.crs.upgrade.clusterNodes=oracle.install.asm.upgradeASM=falseoracle.installer.autoupdates.option=SKIP_UPDATESoracle.installer.autoupdates.downloadUpdatesLoc=AUTOUPDATES_MYORACLESUPPORT_USERNAME=AUTOUPDATES_MYORACLESUPPORT_PASSWORD=PROXY_HOST=PROXY_PORT=0PROXY_USER=PROXY_PWD=PROXY_REALM=
oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v11_2_0ORACLE_HOSTNAME=ora71INVENTORY_LOCATION=/u01/app/grid/oraInventorySELECTED_LANGUAGES=enoracle.install.option=CRS_CONFIGORACLE_BASE=/u01/app/gridORACLE_HOME=/u01/app/gridhome/product/11.2.0/grid_1oracle.install.asm.OSDBA=asmdbaoracle.install.asm.OSOPER=asmoperoracle.install.asm.OSASM=asmadminoracle.install.crs.config.gpnp.scanName=orascanoracle.install.crs.config.gpnp.scanPort=1521oracle.install.crs.config.clusterName=oraclusteroracle.install.crs.config.gpnp.configureGNS=falseoracle.install.crs.config.gpnp.gnsSubDomain=oracle.install.crs.config.gpnp.gnsVIPAddress=oracle.install.crs.config.autoConfigureClusterNodeVIP=falseoracle.install.crs.config.clusterNodes=ora71:ora71-vip,ora72:ora72-viporacle.install.crs.config.networkInterfaceList=enp0s3:10.0.2.0:3,enp0s8:192.168.56.0:1,enp0s9:192.168.221.0:2,virbr0:192.168.122.0:3oracle.install.crs.config.storageOption=ASM_STORAGEoracle.install.crs.config.sharedFileSystemStorage.diskDriveMapping=oracle.install.crs.config.sharedFileSystemStorage.votingDiskLocations=oracle.install.crs.config.sharedFileSystemStorage.votingDiskRedundancy=NORMALoracle.install.crs.config.sharedFileSystemStorage.ocrLocations=oracle.install.crs.config.sharedFileSystemStorage.ocrRedundancy=NORMALoracle.install.crs.config.useIPMI=falseoracle.install.crs.config.ipmi.bmcUsername=oracle.install.crs.config.ipmi.bmcPassword=oracle.install.asm.SYSASMPassword=oracleoracle.install.asm.diskGroup.name=OCRoracle.install.asm.diskGroup.redundancy=EXTERNALoracle.install.asm.diskGroup.AUSize=1oracle.install.asm.diskGroup.disks=/dev/sdboracle.install.asm.diskGroup.diskDiscoveryString=/dev/sd*oracle.install.asm.monitorPassword=oracleoracle.install.crs.upgrade.clusterNodes=oracle.install.asm.upgradeASM=falseoracle.installer.autoupdates.option=SKIP_UPDATESoracle.installer.autoupdates.downloadUpdatesLoc=AUTOUPDATES_MYORACLESUPPORT_USERNAME=AUTOUPDATES_MYORACLESUPPORT_PASSWORD=PROXY_HOST=PROXY_PORT=0PROXY_USER=PROXY_PWD=PROXY_REALM=
##开始安装grid[grid@ora71 grid]$ ./runInstaller -ignorePrereq -force -silent -responseFile /home/grid/grid_rac11G.rsp -showProgressStarting Oracle Universal Installer...Checking Temp space: must be greater than 120 MB. Actual 39555 MB PassedChecking swap space: must be greater than 150 MB. Actual 3967 MB PassedPreparing to launch Oracle Universal Installer from /tmp/OraInstall2019-06-14_03-34-01AM. Please wait ...[grid@ora71 grid]$ [WARNING] [INS-30011] The SYS password entered does not conform to the Oracle recommended standards. CAUSE: Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. ACTION: Provide a password that conforms to the Oracle recommended standards.[WARNING] [INS-30011] The ASMSNMP password entered does not conform to the Oracle recommended standards. CAUSE: Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. ACTION: Provide a password that conforms to the Oracle recommended standards.[WARNING] [INS-32055] The Central Inventory is located in the Oracle base. CAUSE: The Central Inventory is located in the Oracle base. ACTION: Oracle recommends placing this Central Inventory in a location outside the Oracle base directory.You can find the log of this install session at:/u01/app/grid/oraInventory/logs/installActions2019-06-14_03-34-01AM.logPrepare in progress................................................... 9% Done.Prepare successful.Copy files in progress................................................... 15% Done................................................... 20% Done................................................... 25% Done................................................... 30% Done................................................... 35% Done................................................... 40% Done................................................... 45% Done.........................................Copy files successful.Link binaries in progress.Link binaries successful................................................... 62% Done.Setup files in progress.Setup files successful................................................... 76% Done.Perform remote operations in progress................................................... 89% Done.Perform remote operations successful.The installation of Oracle Grid Infrastructure 11g was successful.Please check '/u01/app/grid/oraInventory/logs/silentInstall2019-06-14_03-34-01AM.log' for more details................................................... 94% Done.Execute Root Scripts in progress.As a root user, execute the following script(s): 1. /u01/app/grid/oraInventory/orainstRoot.sh 2. /u01/app/gridhome/product/11.2.0/grid_1/root.shExecute /u01/app/grid/oraInventory/orainstRoot.sh on the following nodes:[ora71, ora72]Execute /u01/app/gridhome/product/11.2.0/grid_1/root.sh on the following nodes:[ora71, ora72].................................................. 100% Done.Execute Root Scripts successful.As install user, execute the following script to complete the configuration. 1. /u01/app/gridhome/product/11.2.0/grid_1/cfgtoollogs/configToolAllCommands RESPONSE_FILE=Note: 1. This script must be run on the same host from where installer was run. 2. This script needs a small password properties file for configuration assistants that require passwords (refer to install guide documentation).Successfully Setup Software.
#在执行root脚本前需要执行下面的内容vi /usr/lib/systemd/system/ohas.service[Unit]Description=Oracle High Availability ServicesAfter=syslog.target[Service]ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simpleRestart=always[Install]WantedBy=multi-user.target#启动服务systemctl daemon-reloadsystemctl enable ohas.servicesystemctl start ohas.servicesystemctl status ohas.service##编辑脚本start_ohas.shvi start_ohas.sh/bin/bashwhile truedo if [ -f /etc/init.d/init.ohasd ];then systemctl start ohas.service systemctl status ohas.service break fidone[root@rhel7ora11 ~]# bash start_ohas.sh
#执行脚本#节点一[root@ora71 ~]# /u01/app/grid/oraInventory/orainstRoot.shChanging permissions of /u01/app/grid/oraInventory.Adding read,write permissions for group.Removing read,write,execute permissions for world.Changing groupname of /u01/app/grid/oraInventory to oinstall.The execution of the script is complete.[root@ora71 ~]# /u01/app/gridhome/product/11.2.0/grid_1/root.shCheck /u01/app/gridhome/product/11.2.0/grid_1/install/root_ora71_2019-06-14_03-44-22.log for the output of root script ##再开窗口查看日志内容[root@ora71 ~]# tail -f /u01/app/gridhome/product/11.2.0/grid_1/install/root_ora71_2019-06-14_03-44-22.logAdding Clusterware entries to inittabCRS-2672: Attempting to start 'ora.mdnsd' on 'ora71'CRS-2676: Start of 'ora.mdnsd' on 'ora71' succeededCRS-2672: Attempting to start 'ora.gpnpd' on 'ora71'CRS-2676: Start of 'ora.gpnpd' on 'ora71' succeededCRS-2672: Attempting to start 'ora.cssdmonitor' on 'ora71'CRS-2672: Attempting to start 'ora.gipcd' on 'ora71'CRS-2676: Start of 'ora.cssdmonitor' on 'ora71' succeededCRS-2676: Start of 'ora.gipcd' on 'ora71' succeededCRS-2672: Attempting to start 'ora.cssd' on 'ora71'CRS-2672: Attempting to start 'ora.diskmon' on 'ora71'CRS-2676: Start of 'ora.diskmon' on 'ora71' succeededCRS-2676: Start of 'ora.cssd' on 'ora71' succeededASM created and started successfully.Disk Group OCR created successfully.clscfg: -install mode specifiedSuccessfully accumulated necessary OCR keys.Creating OCR keys for user 'root', privgrp 'root'..Operation successful.CRS-4256: Updating the profileSuccessful addition of voting disk 546ae35122834f43bf6432b61368f647.Successfully replaced voting disk group with +OCR.CRS-4256: Updating the profileCRS-4266: Voting file(s) successfully replaced## STATE File Universal Id File Name Disk group-- ----- ----------------- --------- ---------1. ONLINE 546ae35122834f43bf6432b61368f647 (/dev/sdb) [OCR]Located 1 voting disk(s).CRS-2672: Attempting to start 'ora.asm' on 'ora71'CRS-2676: Start of 'ora.asm' on 'ora71' succeededCRS-2672: Attempting to start 'ora.OCR.dg' on 'ora71'CRS-2676: Start of 'ora.OCR.dg' on 'ora71' succeededConfigure Oracle Grid Infrastructure for a Cluster ... succeeded#节点二[root@ora72 ~]# /u01/app/grid/oraInventory/orainstRoot.shChanging permissions of /u01/app/grid/oraInventory.Adding read,write permissions for group.Removing read,write,execute permissions for world.Changing groupname of /u01/app/grid/oraInventory to oinstall.The execution of the script is complete.[root@ora72 ~]# /u01/app/gridhome/product/11.2.0/grid_1/root.shCheck /u01/app/gridhome/product/11.2.0/grid_1/install/root_ora72_2019-06-14_03-57-52.log for the output of root script##再开窗口查看脚本执行详细内容[root@ora72 ~]# tail -f /u01/app/gridhome/product/11.2.0/grid_1/install/root_ora72_2019-06-14_03-57-52.logCreating /etc/oratab file...Entries will be added to the /etc/oratab file as needed byDatabase Configuration Assistant when a database is createdFinished running generic part of root script.Now product-specific root actions will be performed.Using configuration parameter file: /u01/app/gridhome/product/11.2.0/grid_1/crs/install/crsconfig_paramsCreating trace directoryUser ignored Prerequisites during installationInstalling Trace File AnalyzerOLR initialization - successfulAdding Clusterware entries to inittabCRS-4402: The CSS daemon was started in exclusive mode but found an active CSS daemon on node ora71, number 1, and is terminatingAn active cluster was found during exclusive startup, restarting to join the clusterConfigure Oracle Grid Infrastructure for a Cluster ... succeeded
#在安装节点(节点一)的grid用户执行配置脚本[grid@ora71 grid]$ /u01/app/gridhome/product/11.2.0/grid_1/cfgtoollogs/configToolAllCommands RESPONSE_FILE=/home/grid/grid_rac11G.rspSetting the invPtrLoc to /u01/app/gridhome/product/11.2.0/grid_1/oraInst.locperform - mode is starting for action: configureperform - mode finished for action: configureYou can see the log file: /u01/app/gridhome/product/11.2.0/grid_1/cfgtoollogs/oui/configActions2019-06-14_04-13-15-AM.log
#查看集群状态[grid@ora71 grid]$ crsctl stat res -t--------------------------------------------------------------------------------NAME TARGET STATE SERVER STATE_DETAILS --------------------------------------------------------------------------------Local Resources--------------------------------------------------------------------------------ora.LISTENER.lsnr ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.OCR.dg ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.asm ONLINE ONLINE ora71 Started ONLINE ONLINE ora72 Started ora.gsd OFFLINE OFFLINE ora71 OFFLINE OFFLINE ora72 ora.net1.network ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.ons ONLINE ONLINE ora71 ONLINE ONLINE ora72 --------------------------------------------------------------------------------Cluster Resources--------------------------------------------------------------------------------ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE ora71 ora.cvu 1 ONLINE ONLINE ora71 ora.oc4j 1 ONLINE ONLINE ora71 ora.ora71.vip 1 ONLINE ONLINE ora71 ora.ora72.vip 1 ONLINE ONLINE ora72 ora.scan1.vip 1 ONLINE ONLINE ora71
#创建磁盘组[grid@ora71 grid]$ sqlplus /nologSQL*Plus: Release 11.2.0.4.0 Production on Fri Jun 14 04:16:59 2019Copyright (c) 1982, 2013, Oracle. All rights reserved.SQL> conn / as sysasmConnected.SQL> create diskgroup DATA01 external redundancy disk '/dev/sdc';Diskgroup created.SQL> set linesize 300SQL> select NAME,TOTAL_MB/1024 "TOTAL/G",FREE_MB/1024 "FREE/G",round(FREE_MB/TOTAL_MB*100)||'%' Per_Free,state from v$asm_diskgroup;NAME TOTAL/G FREE/G PER_FREE STATE------------------------------ ---------- ---------- ----------------------------------------- -----------OCR 2 1.61328125 81% MOUNTEDDATA01 30 29.9511719 100% MOUNTEDSQL> !crsctl stat res -t--------------------------------------------------------------------------------NAME TARGET STATE SERVER STATE_DETAILS --------------------------------------------------------------------------------Local Resources--------------------------------------------------------------------------------ora.DATA01.dg ONLINE ONLINE ora71 OFFLINE OFFLINE ora72 ora.LISTENER.lsnr ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.OCR.dg ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.asm ONLINE ONLINE ora71 Started ONLINE ONLINE ora72 Started ora.gsd OFFLINE OFFLINE ora71 OFFLINE OFFLINE ora72 ora.net1.network ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.ons ONLINE ONLINE ora71 ONLINE ONLINE ora72 --------------------------------------------------------------------------------Cluster Resources--------------------------------------------------------------------------------ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE ora71 ora.cvu 1 ONLINE ONLINE ora71 ora.oc4j 1 ONLINE ONLINE ora71 ora.ora71.vip 1 ONLINE ONLINE ora71 ora.ora72.vip 1 ONLINE ONLINE ora72 ora.scan1.vip 1 ONLINE ONLINE ora71 #在节点二挂载磁盘组root@ora71 ~]# /u01/app/gridhome/product/11.2.0/grid_1/bin/srvctl start diskgroup -g DATA01 -n ora72[root@ora71 ~]# /u01/app/gridhome/product/11.2.0/grid_1/bin/crsctl stat res -t--------------------------------------------------------------------------------NAME TARGET STATE SERVER STATE_DETAILS --------------------------------------------------------------------------------Local Resources--------------------------------------------------------------------------------ora.DATA01.dg ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.LISTENER.lsnr ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.OCR.dg ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.asm ONLINE ONLINE ora71 Started ONLINE ONLINE ora72 Started ora.gsd OFFLINE OFFLINE ora71 OFFLINE OFFLINE ora72 ora.net1.network ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.ons ONLINE ONLINE ora71 ONLINE ONLINE ora72 --------------------------------------------------------------------------------Cluster Resources--------------------------------------------------------------------------------ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE ora71 ora.cvu 1 ONLINE ONLINE ora71 ora.oc4j 1 ONLINE ONLINE ora71 ora.ora71.vip 1 ONLINE ONLINE ora71 ora.ora72.vip 1 ONLINE ONLINE ora72 ora.scan1.vip 1 ONLINE ONLINE ora71
#安装rdbms#编辑rsp文件oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0#安装选项,3个值可选# - INSTALL_DB_SWONLY #只安装rdbms# - INSTALL_DB_AND_CONFIG #安装rdbms和instance# - UPGRADE_DB #升级安装oracle.install.option=INSTALL_DB_SWONLY#指定当前安装节点的主机名ORACLE_HOSTNAME=ora71UNIX_GROUP_NAME=oinstall#指定日志路径INVENTORY_LOCATION=/u01/app/oracle/oraInventory#指定语言,en : English,zh_CN: Simplified Chinese。多个语言用逗号分隔SELECTED_LANGUAGES=enORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1ORACLE_BASE=/u01/app/oracle#指定安装的版本,4个值可选# - EE : Enterprise Edition # - SE : Standard Edition # - SEONE : Standard Edition One# - PE : Personal Edition (WINDOWS ONLY)oracle.install.db.InstallEdition=EEoracle.install.db.EEOptionsSelection=falseoracle.install.db.optionalComponents=#指定组权限oracle.install.db.DBA_GROUP=dbaoracle.install.db.OPER_GROUP=oper#指定节点名称,一般使用主机名oracle.install.db.CLUSTER_NODES=ora71,ora72#是否安装rac一个节点# - true : Value of RAC One Node service name is used.# - false : Value of RAC One Node service name is not used.oracle.install.db.isRACOneInstall=falseoracle.install.db.racOneServiceName=#指定创建的数据库的类型# - GENERAL_PURPOSE/TRANSACTION_PROCESSING # - DATA_WAREHOUSE oracle.install.db.config.starterdb.type=GENERAL_PURPOSE#指定实例的参数,但是我们只安装rdbms,这里不指定oracle.install.db.config.starterdb.globalDBName=oracle.install.db.config.starterdb.SID=oracle.install.db.config.starterdb.characterSet=oracle.install.db.config.starterdb.memoryOption=falseoracle.install.db.config.starterdb.memoryLimit=oracle.install.db.config.starterdb.installExampleSchemas=falseoracle.install.db.config.starterdb.enableSecuritySettings=trueoracle.install.db.config.starterdb.password.ALL=oracle.install.db.config.starterdb.password.SYS=oracle.install.db.config.starterdb.password.SYSTEM=oracle.install.db.config.starterdb.password.SYSMAN=oracle.install.db.config.starterdb.password.DBSNMP=oracle.install.db.config.starterdb.control=DB_CONTROLoracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=oracle.install.db.config.starterdb.automatedBackup.enable=falseoracle.install.db.config.starterdb.automatedBackup.osuid=oracle.install.db.config.starterdb.automatedBackup.ospwd=oracle.install.db.config.starterdb.storageType=oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=oracle.install.db.config.asm.diskGroup=oracle.install.db.config.asm.ASMSNMPPassword=#指定oracle support的用户名和密码MYORACLESUPPORT_USERNAME=MYORACLESUPPORT_PASSWORD=SECURITY_UPDATES_VIA_MYORACLESUPPORT=false#指定是否不配置安装更新DECLINE_SECURITY_UPDATES=truePROXY_HOST=PROXY_PORT=PROXY_USER=PROXY_PWD=PROXY_REALM=COLLECTOR_SUPPORTHUB_URL=oracle.installer.autoupdates.option=SKIP_UPDATESoracle.installer.autoupdates.downloadUpdatesLoc=AUTOUPDATES_MYORACLESUPPORT_USERNAME=AUTOUPDATES_MYORACLESUPPORT_PASSWORD=#编译好的文件oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0oracle.install.option=INSTALL_DB_SWONLYORACLE_HOSTNAME=ora71UNIX_GROUP_NAME=oinstallINVENTORY_LOCATION=/u01/app/oracle/oraInventorySELECTED_LANGUAGES=enORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1ORACLE_BASE=/u01/app/oracleoracle.install.db.InstallEdition=EEoracle.install.db.EEOptionsSelection=falseoracle.install.db.optionalComponents=oracle.install.db.DBA_GROUP=dbaoracle.install.db.OPER_GROUP=operoracle.install.db.CLUSTER_NODES=ora71,ora72oracle.install.db.isRACOneInstall=falseoracle.install.db.racOneServiceName=oracle.install.db.config.starterdb.type=GENERAL_PURPOSEoracle.install.db.config.starterdb.globalDBName=oracle.install.db.config.starterdb.SID=oracle.install.db.config.starterdb.characterSet=oracle.install.db.config.starterdb.memoryOption=falseoracle.install.db.config.starterdb.memoryLimit=oracle.install.db.config.starterdb.installExampleSchemas=falseoracle.install.db.config.starterdb.enableSecuritySettings=trueoracle.install.db.config.starterdb.password.ALL=oracle.install.db.config.starterdb.password.SYS=oracle.install.db.config.starterdb.password.SYSTEM=oracle.install.db.config.starterdb.password.SYSMAN=oracle.install.db.config.starterdb.password.DBSNMP=oracle.install.db.config.starterdb.control=DB_CONTROLoracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=oracle.install.db.config.starterdb.automatedBackup.enable=falseoracle.install.db.config.starterdb.automatedBackup.osuid=oracle.install.db.config.starterdb.automatedBackup.ospwd=oracle.install.db.config.starterdb.storageType=oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=oracle.install.db.config.asm.diskGroup=oracle.install.db.config.asm.ASMSNMPPassword=MYORACLESUPPORT_USERNAME=MYORACLESUPPORT_PASSWORD=SECURITY_UPDATES_VIA_MYORACLESUPPORT=falseDECLINE_SECURITY_UPDATES=truePROXY_HOST=PROXY_PORT=PROXY_USER=PROXY_PWD=PROXY_REALM=COLLECTOR_SUPPORTHUB_URL=oracle.installer.autoupdates.option=SKIP_UPDATESoracle.installer.autoupdates.downloadUpdatesLoc=AUTOUPDATES_MYORACLESUPPORT_USERNAME=AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
#在安装rdbms前,需要编辑一个脚本,因为oracle11G在linux7上面安装有bugvi edit_emagent.sh#/bin/bash[ -f ~/.bash_profile ]&& . ~/.bash_profilewhile truedo if [ -f $ORACLE_HOME/sysman/lib/ins_emagent.mk ];then sed -i 's/$(MK_EMAGENT_NMECTL)/$(MK_EMAGENT_NMECTL)-lnnz11/g' $ORACLE_HOME/sysman/lib/ins_emagent.mk break fidonebash edit_emagent.sh
#开始安装rdbmsStarting Oracle Universal Installer...Checking Temp space: must be greater than 120 MB. Actual 30631 MB PassedChecking swap space: must be greater than 150 MB. Actual 3965 MB PassedPreparing to launch Oracle Universal Installer from /tmp/OraInstall2019-06-14_05-06-03AM. Please wait ...[oracle@ora71 database]$ You can find the log of this install session at:/u01/app/grid/oraInventory/logs/installActions2019-06-14_05-06-03AM.logPrepare in progress................................................... 9% Done.Prepare successful.Copy files in progress................................................... 15% Done................................................... 20% Done................................................... 25% Done................................................... 30% Done................................................... 36% Done................................................... 41% Done................................................... 46% Done................................................... 51% Done................................................... 56% Done.Copy files successful...........Link binaries in progress.Link binaries successful................................................... 77% Done.Setup files in progress................................................... 94% Done.Setup files successful.The installation of Oracle Database 11g was successful.Please check '/u01/app/grid/oraInventory/logs/silentInstall2019-06-14_05-06-03AM.log' for more details.Execute Root Scripts in progress.As a root user, execute the following script(s):1. /u01/app/oracle/product/11.2.0/db_1/root.shExecute /u01/app/oracle/product/11.2.0/db_1/root.sh on the following nodes:[ora71, ora72].................................................. 100% Done.Execute Root Scripts successful.Successfully Setup Software.#root执行脚本#节点一[root@ora71 ~]# /u01/app/oracle/product/11.2.0/db_1/root.shCheck /u01/app/oracle/product/11.2.0/db_1/install/root_ora71_2019-06-14_05-20-51.log for the output of root script[root@ora71 ~]# cat /u01/app/oracle/product/11.2.0/db_1/install/root_ora71_2019-06-14_05-20-51.logPerforming root user operation for Oracle 11gThe following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1 Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ...Entries will be added to the /etc/oratab file as needed byDatabase Configuration Assistant when a database is createdFinished running generic part of root script.Now product-specific root actions will be performed.Finished product-specific root actions.Finished product-specific root actions.#节点二[root@ora72 ~]# /u01/app/oracle/product/11.2.0/db_1/root.shCheck /u01/app/oracle/product/11.2.0/db_1/install/root_ora72_2019-06-14_05-21-34.log for the output of root script[root@ora72 ~]# cat /u01/app/oracle/product/11.2.0/db_1/install/root_ora72_2019-06-14_05-21-34.logPerforming root user operation for Oracle 11gThe following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1 Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ...Entries will be added to the /etc/oratab file as needed byDatabase Configuration Assistant when a database is createdFinished running generic part of root script.Now product-specific root actions will be performed.Finished product-specific root actions.Finished product-specific root actions.
#创建实例#编辑rsp文件[GENERAL]RESPONSEFILE_VERSION = "11.2.0"#Valid values : "createDatabase" \ "createTemplateFromDB" \ "createCloneTemplate" \ "deleteDatabase" \ "configureDatabase" \ "addInstance" (RAC-only) \ "deleteInstance" (RAC-only)OPERATION_TYPE = "createDatabase"[CREATEDATABASE]#Description : Global database name of the databaseGDBNAME = "orcl11g.us.oracle.com"SID = "orcl11g"#指定安装节点的主机名,多个节点用逗号分隔NODELIST=TEMPLATENAME = "General_Purpose.dbc"#指定sys和system用户的密码SYSPASSWORD = "password"SYSTEMPASSWORD = "password"#指定数据文件的路径DATAFILEDESTINATION =#指定数据库存储的类型# Valid values : FS (CFS for RAC), ASMSTORAGETYPE=FS#指定磁盘组名称DISKGROUPNAME=DATA#指定字符集,国际字符集的默认是"AL16UTF16"CHARACTERSET = "AL32UTF8"NATIONALCHARACTERSET= "UTF8" #-----------------------------------------------------------------------------# Name : MEMORYPERCENTAGE# Datatype : String# Description : percentage of physical memory for Oracle# Default value : None# Mandatory : NO#-----------------------------------------------------------------------------#MEMORYPERCENTAGE = "40"#指定使用的内存# Description : total memory in MB to allocate to OracleTOTALMEMORY = "1700"#编译好的rsp文件[GENERAL]RESPONSEFILE_VERSION = "11.2.0"OPERATION_TYPE = "createDatabase"[CREATEDATABASE]GDBNAME = "RACDB"SID = "RACDB"NODELIST=ora71,ora72TEMPLATENAME = "General_Purpose.dbc"SYSPASSWORD = "oracle"SYSTEMPASSWORD = "oracle"DATAFILEDESTINATION = "+data01"STORAGETYPE=ASMDISKGROUPNAME=DATA01CHARACTERSET = "AL32UTF8"NATIONALCHARACTERSET= "UTF8"TOTALMEMORY = "1700"
#创建实例[oracle@ora71 ~]$ $ORACLE_HOME/bin/dbca -silent -responseFile /home/oracle/dbca_rac.rspCopying database files1% complete3% complete30% completeCreating and starting Oracle instance32% complete36% complete40% complete44% complete45% complete48% complete50% completeCreating cluster database views52% complete70% completeCompleting Database Creation73% complete76% complete85% complete94% complete100% completeLook at the log file "/u01/app/oracle/cfgtoollogs/dbca/RACDB/RACDB.log" for further details
#验证实例[grid@ora71 grid]$ crsctl stat res -t--------------------------------------------------------------------------------NAME TARGET STATE SERVER STATE_DETAILS --------------------------------------------------------------------------------Local Resources--------------------------------------------------------------------------------ora.DATA01.dg ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.LISTENER.lsnr ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.OCR.dg ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.asm ONLINE ONLINE ora71 Started ONLINE ONLINE ora72 Started ora.gsd OFFLINE OFFLINE ora71 OFFLINE OFFLINE ora72 ora.net1.network ONLINE ONLINE ora71 ONLINE ONLINE ora72 ora.ons ONLINE ONLINE ora71 ONLINE ONLINE ora72 --------------------------------------------------------------------------------Cluster Resources--------------------------------------------------------------------------------ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE ora71 ora.cvu 1 ONLINE ONLINE ora71 ora.oc4j 1 ONLINE ONLINE ora71 ora.ora71.vip 1 ONLINE ONLINE ora71 ora.ora72.vip 1 ONLINE ONLINE ora72 ora.racdb.db 1 ONLINE ONLINE ora71 Open 2 ONLINE ONLINE ora72 Open ora.scan1.vip 1 ONLINE ONLINE ora71 #sqlplus验证SQL> set linesize 300SQL> select instance_number,instance_name,host_name,status from gv$instance;INSTANCE_NUMBER INSTANCE_NAME HOST_NAME STATUS--------------- ---------------- ---------------------------------------------------------------- ------------ 1 RACDB1 ora71 OPEN 2 RACDB2 ora72 OPENSQL>
到此,关于"linux7静默安装11GR2 RAC的方法是什么"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
节点
文件
名称
磁盘
脚本
重点
路径
配置
验证
方法
冗余
参数
实例
密码
学习
两个
主机
代表
信息
内容
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
在网页中访问数据库
查询数据库结果显示
dns服务器检测
hp服务器金牌服务电话
北京现代化软件开发概念
模拟人工加人的软件开发
浦发银行软件开发黄帅
互联网服务器哪种好
南京互联网科技
天津软件开发集团
维护网络安全牢牢把握主导权
网络安全防溺水作文400字
虎兮互联网科技有限公司
京东软件开发部电话
农村数据库
编写客户端 服务器 语言
网络安全征言
天梭k1 服务器的安全软件
选择图书馆数据库的原因
纸箱吸塑一体软件开发服务
河北品牌软件开发要求
tbc服务器成单边服
服务器如何vps
校园网络安全制服
网络安全证书报名时间
软件开发三层境界评论
宿州爱淘网络技术有限公司怎么样
松江区大规模软件开发服务是什么
软件开发效果展示
学网络技术毕业后能干啥