Oracle RAC是Oracle Real Application Cluster的简写,官方中文文档一般翻译为“真正应用集群”,它一般有两台或者两台以上同构计算机及共享存储设备构成,可提供强大的数据库处理能力,现在是Oracle 10g Grid应用的重要组成部分。RAC(Race Game)指竞速类游戏。--百度。

一些图片在很久之前就截了下载,最近在虚拟机里面跑一下测试,现在再整理一下,发布上来,图片很多。在整理的过程中发现,自己单独做一篇都是简单,但是记录成文档,再发布上来真的就不容易了,感觉像一下子做了十次一样,每个错误都想记录下来,但是又很多细节无法一一详记。希望大家能知道老夫的不容易啊,呵呵。有一些记录的不好的话大家多多见谅,互相学习啊。

部分测试环境

硬件:两个虚拟机内存2g,swap,结果节点一出现死机,两个节点内存差不多占满,建议内存3g+。

系统:rhel5.5,oracle linux5U8,centos6.6,oracle linux 6.7,结果,除了redhat5.x以及oracle linux5 比较好之外,其他版本内核和模块原因不能继续。

...

...

网络规划
rac1
eth0 10.1.2.140 rac1
10.1.2.141 rac1-vip
eth1 192.168.0.140 rac1-priv

rac2
eth0 10.1.2.142 rac2
10.1.2.143 rac2-vip
eth1 192.168.0.142 rac2-priv

/etc/hosts
#eth0 public
10.1.2.140 rac1.kong.com rac1
10.1.2.142 rac2.kong.com rac2
#virtual
10.1.2.141 rac1-vip.kong.com rac1-vip
10.1.2.143 rac2-vip.kong.com rac2-vip
#eth1 private
192.168.0.140 rac1-priv.kong.com rac1-priv
192.168.0.142 rac2-priv.kong.com rac2-priv
#scan
10.1.2.144 rac-scan.kong.com rac-scan

存储
10g-->分三分区,i


勾选立即分配,单个文件存储提高性能

高级修改->scsi通道改为1:X,独立永久。

节点2添加现有磁盘 修改和节点1相同配置


修改虚拟机文件“虚拟机名称.vmx”文件
#shared disks configure
disk.locking = "FALSE"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.maxUnsyncedWrites = "0"
disk.EnableUUID = "TRUE"  #否则UUID出不来
scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"
scsi1.sharedBus = "VIRTUAL"
scsi1:0.present = "TRUE"
scsi1:0.mode = "independent-persistent"
scsi1:0.fileName = "E:\share\ocr_vote.vmdk"
scsi1:0.deviceType = "disk"
scsi1:0.redo = ""

-------------
scsi1.virtualDev = "lsilogic"
scsi1.present = "TRUE"
scsi1.sharedBus = "VIRTUAL"
scsi1:0.present = "TRUE"
scsi1:0.fileName = "D:\Program Files (x86)\VMware\Shared Virtual Mchine\ShareStore\vmShareStore.vmdk"
scsi1:0.mode = "independent-persistent"
scsi1:0.deviceType = "disk"
scsi0:1.present = "FALSE"
floppy0.present = "FALSE"

disk.locking = "FALSE"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.maxUnsyncedWrites = "0"
disk.EnableUUID = "TRUE"

-------------
现在rac1添加共享存储,再手动rac2添加共享存储,再添加上面的代码。

依赖关系
使用脚本批量安装
vi yumget.sh
#!bin/bash
#start install required packages
echo "start installing required packages"
yum -y install binutils-*
yum -y install compat-libstdc++-*
yum -y install compat-libstdc++-*
yum -y install elfutils-libelf-*
yum -y install elfutils-libelf-devel-*
yum -y install gcc-*
yum -y install gcc-c++-*
yum -y install glibc-*
yum -y install glibc-*
yum -y install glibc-common-*
yum -y install glibc-devel-*
yum -y install glibc-devel-*
yum -y install glibc-headers-*
yum -y install ksh-*
yum -y install libaio-*
yum -y install libaio-*
yum -y install libaio-devel-*
yum -y install libaio-devel-*
yum -y install libgcc-*
yum -y install libgcc-*
yum -y install libstdc++-*
yum -y install libstdc++-*
yum -y install libstdc++-devel*
yum -y install make-*
yum -y install sysstat-*
yum -y install unixODBC-*
运行sh yumget.sh


勾选客机时间与主机同步相当于ntp,前提

安装工作(两个节点同时进行)
1.修改主机名
vi /etc/sysconfig/network
HOSTNAME=rac1.xl.com
2.创建用户及相关
用户规划
grid:
ORACLE_HOME =/oracle/app/grid_home
ORACLE_BASE=/oracle/app/grid

oracle:
ORACLE_BASE=/oracle/app/oracle
ORACLE_HOME=/oracle/app/oracle/db
用户创建
/usr/sbin/groupadd -g 505 oinstall
/usr/sbin/groupadd -g 502 dba
/usr/sbin/groupadd -g 503 oper
/usr/sbin/groupadd -g 504 asmadmin
/usr/sbin/groupadd -g 506 asmdba
/usr/sbin/groupadd -g 507 asmoper
/usr/sbin/useradd -u 505 -g oinstall -G asmadmin,dba,asmdba,asmoper grid
/usr/sbin/useradd -u 506 -g oinstall -G dba,asmdba,oper oracle
用户密码
echo -n 123456|passwd --stdin grid
echo -n 123456|passwd --stdin oracle
本地文件
mkdir -p /oracle/app/grid
chown grid.oinstall /oracle/app/grid
chmod 775 /oracle/app/grid

mkdir -p /oracle/app/grid_home
chown grid.oinstall /oracle/app/grid_home
chmod 775 /oracle/app/grid_home

mkdir -p /oracle/app/oracle
chown oracle.oinstall /oracle/app/oracle
chmod 775 /oracle/app/oracle

mkdir -p /oracle/app/oracle/db
chown oracle.oinstall /oracle/app/oracle/db
chmod 775 /oracle/app/oracle/db

chown grid.oinstall /oracle/app
chmod 775 /oracle/app

3.修改系统,用户参数
cp /etc/sysctl.conf /etc/sysctl.conf_bak
vi /etc/sysctl.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 4294967295
kernel.shmall = 268435456
fs.aio-max-nr = 1048576
fs.file-max = 6815744
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

sysctl -p

vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536

4.配置用户环境变量
4.1 grid用户环境变量,节点不同ORACLE_SID->+ASM1+1
ORACLE_BASE=/oracle/app/grid; export ORACLE_BASE
ORACLE_HOME=/oracle/app/grid_home; export ORACLE_HOME
ORACLE_SID=+ASM1; export ORACLE_SID
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export PATH

4.2 oracle用户环境变量,节点不同ORACLE_SID->rac1+1
ORACLE_BASE=/oracle/app/oracle; export ORACLE_BASE
ORACLE_HOME=/oracle/app/oracle/db; export ORACLE_HOME
ORACLE_SID=rac1; export ORACLE_SID
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export PATH

5. 用户等效性
略过,后面会自动完成

6.关闭防火墙senlinux
临时关闭
service iptables stop;
setenforce 0;
永久关闭
chkconfig iptables off;
vi /etc/selinux/config
SELINUX=disabled

7.安装ASM驱动
安装网站“http://www.oracle.com/technetwork/topics/linux/asmlib/index-101839.html”
如果是redhat5的需要下载三个文件 区分32与64位
• oracleasm-2.6.18-194.el5xen-2.0.5-1.el5.i686.rpm
• oracleasm-2.6.18-194.el5debug-2.0.5-1.el5.i686.rpm
• oracleasm-2.6.18-194.el5PAE-2.0.5-1.el5.i686.rpm
• oracleasm-2.6.18-194.el5-debuginfo-2.0.5-1.el5.i686.rpm
• oracleasm-2.6.18-194.el5-2.0.5-1.el5.i686.rpm
如果是redhat6的只有64位的lib下载(或许可以下载oracle linux6 的32位)
• oracleasm-support-2.1.8-1.el6.x86_64.rpm
• oracleasmlib-2.0.4-1.el6.x86_64.rpm
如果是oracle linux6的有32与64位
• oracleasm-support-2.1.8-1.el6.x86_64.rpm
• oracleasmlib-2.0.4-1.el6.i686.rpm
如果是oracle linux7(redhat7以上只有64位系统)
• oracleasm-support-2.1.8-1.el6.x86_64.rpm
• oracleasmlib-2.0.8-2.el7.x86_64.rpm
[root@rac1 note]# uname -a
Linux rac1.kong.com 2.6.18-194.el5PAE #1 SMP Tue Mar 16 22:00:21 EDT 2010 i686 i686 i386 GNU/Linux
系统是有2.6.18-194.el5PAE 有PAE的所以要注意
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release (如果报验证问题时执行)
[root@rac1 note]# rpm -ivh oracleasm-support-2.1.8-1.el5.i386.rpm
warning: oracleasm-support-2.1.8-1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing... ########################################### [100%]
1:oracleasm-support ########################################### [100%]
[root@rac1 note]# rpm -ivh oracleasm-2.6.18-194.el5PAE-2.0.5-1.el5.i686.rpm
warning: oracleasm-2.6.18-194.el5PAE-2.0.5-1.el5.i686.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing... ########################################### [100%]
1:oracleasm-2.6.18-194.el########################################### [100%]
[root@rac1 note]# rpm -ivh oracleasmlib-2.0.4-1.el5.i386.rpm
warning: oracleasmlib-2.0.4-1.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159
Preparing... ########################################### [100%]
1:oracleasmlib ########################################### [100%]

7.1配置asm
A
[root@rac2 note]# oracleasm configure -i
Configuring the Oracle ASM library driver.

This will configure the on-boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets ('[]'). Hitting <ENTER> without typing an
answer will keep that current value. Ctrl-C will abort.

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 driver configuration: done
B
[root@rac2 note]# oracleasm init
Creating /dev/oracleasm mount point: /dev/oracleasm
Loading module "oracleasm": oracleasm
Configuring "oracleasm" to use device physical block size
Mounting ASMlib driver filesystem: /dev/oracleasm

8.分区(在节点1做)
[root@rac1 note]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xadbadc79.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').

Command (m for help): p

Disk /dev/sdb: 16.1 GB, 16106127360 bytes
255 heads, 63 sectors/track, 1958 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xadbadc79

Device Boot Start End Blocks Id System

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1958, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-1958, default 1958): +3G

Command (m for help): p

Disk /dev/sdb: 16.1 GB, 16106127360 bytes
255 heads, 63 sectors/track, 1958 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xadbadc79

Device Boot Start End Blocks Id System
/dev/sdb1 1 393 3156741 83 Linux

Command (m for help): n
Command action
e extended
p primary partition (1-4)
2
Invalid partition number for type `2'
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (394-1958, default 394):
Using default value 394
Last cylinder, +cylinders or +size{K,M,G} (394-1958, default 1958): +7G

Command (m for help): p

Disk /dev/sdb: 16.1 GB, 16106127360 bytes
255 heads, 63 sectors/track, 1958 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xadbadc79

Device Boot Start End Blocks Id System
/dev/sdb1 1 393 3156741 83 Linux
/dev/sdb2 394 1308 7349737+ 83 Linux

Command (m for help): w
基本是3g,7g两个分区

8.1节点一创建并发现ASM分区
[root@rac1 note]# oracleasm createdisk OCR_VOTE /dev/sdb1
Writing disk header: done
Instantiating disk: done
[root@rac1 note]# oracleasm createdisk DATA /dev/sdb2
Writing disk header: done
Instantiating disk: done
[root@rac1 note]# oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
[root@rac1 note]# oracleasm listdisks
DATA
OCR_VOTE
[root@rac1 note]#

节点二只需要发现ASM分区
[root@rac2 note]# oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...
Instantiating disk "OCR_VOTE"
Instantiating disk "DATA"
[root@rac2 note]# oracleasm listdisks
DATA
OCR_VOTE
[root@rac2 note]# sync

9安装grid(单节点执行)
切换grid用户
运行runInstall


修改SCAN NAME为你hosts文件里面的对应的scan名


添加节点,大家可以看到hostname和virtual ip name在hosts文件是对应啊


其他的能默认的都默认


解决依赖关系

执行yumget.sh之后还有不能安装的包就可以忽略有些64位不能识别


安装ing


在65%的时候,rac2上面会自动出现一个grid用户的ractrans 传输进程,如果没有就检查iptables和selinux有没有关闭。


在这里就用root用户在两个节点上面运行这两个脚本,运行完就点ok。
最后回报一个“[INS-20802] Oracle Cluster Vertificate utility...."的错,不用管点击ok即可,点next,完成安装
安装完成后使用crs_stat -t去查看资源状态,发现gsd/oc4j 都是在offline状态! 这个是11.2.0.1的默认现象
gsd用来支持oem等交互式工具,oc4j是oracle应用服务的一些组件,如biee
[grid@rac1 ~]$ /oracle/app/grid_home/bin/crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.DATA.dg ora....up.type ONLINE ONLINE rac1
ora....ER.lsnr ora....er.type ONLINE ONLINE rac1
ora....N1.lsnr ora....er.type ONLINE ONLINE rac2
ora.asm ora.asm.type ONLINE ONLINE rac1
ora.eons ora.eons.type ONLINE ONLINE rac1
ora.gsd ora.gsd.type OFFLINE OFFLINE
ora....network ora....rk.type ONLINE ONLINE rac1
ora.oc4j ora.oc4j.type OFFLINE OFFLINE
ora.ons ora.ons.type ONLINE ONLINE rac1
ora....SM2.asm application ONLINE ONLINE rac1
ora....C1.lsnr application ONLINE ONLINE rac1
ora.rac1.gsd application OFFLINE OFFLINE
ora.rac1.ons application ONLINE ONLINE rac1
ora.rac1.vip ora....t1.type ONLINE ONLINE rac1
ora....SM1.asm application ONLINE ONLINE rac2
ora....C2.lsnr application ONLINE ONLINE rac2
ora.rac2.gsd application OFFLINE OFFLINE
ora.rac2.ons application ONLINE ONLINE rac2
ora.rac2.vip ora....t1.type ONLINE ONLINE rac2
ora....ry.acfs ora....fs.type ONLINE ONLINE rac1
ora.scan1.vip ora....ip.type ONLINE ONLINE rac2
ping 节点的vip看看能不能ping通

这里vm可以先打个点做个快照,但是由于vm的共享存储集群是用独立\立即\写入的,所以不受快照影响,写快照要想关机。
关机要先关crs
关闭crs
[root@rac1 ~]# /oracle/app/grid_home/bin/crs_stop -all 或
[root@rac1 ~]# /oracle/app/grid_home/bin/crsctl stop crs
开启crs
[root@rac1 ~]# /oracle/app/grid_home/bin/crs_start -all 或
[root@rac1 ~]# /oracle/app/grid_home/bin/crsctl start crs

oracle rac 默认会开机自启动,如需维护时可使用以下命令:
关闭:
crsctl stop cluster 停止本节点集群服务
crsctl stop cluster –all 停止所有节点服务
开启
crsctl start cluster 开启本节点集群服务
crsctl stop cluster –all 开启所有节点服务
注:以上命令需以 root 用户执行
9.2 错误
运行root.sh报错,是在红帽6的一个bug
Adding daemon to inittab
CRS-4124: Oracle High Availability Services startup failed.
CRS-4000: Command Start failed, or completed with errors.
ohasd failed to start: Inappropriate ioctl for device
ohasd failed to start at /oracle/app/grid_home/crs/install/rootcrs.pl line 443.
卸载配置
[root@rac1 Desktop]# /oracle/app/grid_home/crs/install/roothas.pl -delete -force
2015-08-04 01:23:49: Checking for super user privileges
2015-08-04 01:23:49: User has super user privileges
2015-08-04 01:23:49: Parsing the host name
Using configuration parameter file: /oracle/app/grid_home/crs/install/crsconfig_params
CRS-4535: Cannot communicate with Cluster Ready Services
CRS-4000: Command Stop failed, or completed with errors.
CRS-4535: Cannot communicate with Cluster Ready Services
CRS-4000: Command Delete failed, or completed with errors.
CRS-4544: Unable to connect to OHAS
CRS-4000: Command Stop failed, or completed with errors.
/oracle/app/grid_home/bin/acfsdriverstate: line 51: /lib/acfstoolsdriver.sh: No such file or directory
/oracle/app/grid_home/bin/acfsdriverstate: line 51: exec: /lib/acfstoolsdriver.sh: cannot execute: No such file or directory
Successfully deconfigured Oracle Restart stack

chmod a+wr /var/tmp/.oracle/npohasd
[root@rac1 install]# /bin/dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1 count=1024
/oracle/app/ grid_home/crs/install/roothas.pl -deconfig -force -verbose

ADVM/ACFS is not supported on redhat-release-server-6Server-6.7.0.3.0.1.el6.x86_64

[root@rac1 install]# more /tmp/.linux_release
redhat-release-server-6Server-6.7.0.3.0.1.el6.x86_64
[root@rac1 install]# echo "redhat-release-5Server-5" > /tmp/.linux_release
[root@rac1 install]# more /tmp/.linux_release
redhat-release-5Server-5
[root@rac1 install]# /usr/bin/chattr +i /tmp/.linux_release
[root@rac1 install]#

acfsroot: ACFS-9301: ADVM/ACFS installation can not proceed:

acfsroot: ACFS-9302: No installation files found at /oracle/app/grid_home/install/usm/EL5/x86_64/2.6.18-8/2.6.18-8.x86_64-x86_64/bin.

root@rac1 bin]# gedit /oracle/app/grid_home/lib/osds_acfslib.pm
1. [root@rac1 lib]# vi osds_acfslib.pm  
2.   if ((defined($release)) &&                     # Redhat or OEL if defined 
3.       (($ release =~ /^redhat-release/) ||        # straight RH 
4.        ($ release =~ /^enterprise-release/) ||    # Oracle Enterprise Linux 
5.        ($ release =~ /^oraclelinux-release/)))    # Oracle Linux 
6.   { 
7.  
8. 将上面的代码片段修改如下: 
9.  if ((defined($release)) &&                     # Redhat or OEL if defined 
10.       (($ release =~ /^redhat-release/) ||        # straight RH 
11.        ($ release =~ /^enterprise-release/) ||    # Oracle Enterprise Linux 
12.        ($ release =~ /^centos-release/) ||        # CentOS hack 
13.        ($ release =~ /^oraclelinux-release/)))    # Oracle Linux 
14.   {

Oracle 11g R2+RAC+ASM+redhat安装详解2
卸载Oracle 11g R2 RAC

Oracle 11g R2+RAC+ASM+redhat安装详解1相关推荐

  1. Oracle 11g R2 Clusterware新特性 – HAIP详解

    By luocs ( 十二月 18, 2012 at 上午 8:23) 前段时间在聊RAC私网(Private Network)冗余技术的时候,朋友们大多搬出Bonding技术,当时我说了个HAIP, ...

  2. oracle 11g r2 rac到单实例的dg

    oracle 11g r2 rac到单实例的dg 1 主备环境说明 rac环境--primary CentOS release 6.5 (Final) hostname rac1 rac2 ip 10 ...

  3. Oracle 11G R2 RAC 启动报错:ORA-01078 ORA-01565 ORA-17503 ORA-12547 处理方法

    Oracle 11G R2 RAC 启动报错:ORA-01078 ORA-01565 ORA-17503 ORA-12547 处理方法 前几天搭建的RAC测试环境:RedHat 6.8   grid ...

  4. Oracle 11G R2 RAC中的scan ip 的用途和基本原理【转】

    Oracle 11G R2 RAC增加了scan ip功能,在11.2之前,client链接数据库的时候要用vip,假如你的cluster有4个节点,那么客户端的tnsnames.ora中就对应有四个 ...

  5. Oracle 11g R2 RAC Hands on Training RAC 性能优化

    教程网址:  Oracle中国公司作品:Oracle 11g R2 RAC Hands on Training - 1 在线播放:http://www.boobooke.com/v/bbk3464 O ...

  6. oracle 11g r2 rac中节点时间不同步,Oracle11gR2安装RAC错误之--时钟不同步

    系统环境: 操作系统:RedHat EL5 Cluster: Oracle GI(Grid Infrastructure) Oracle: Oracle 11.2.0.1.0 如图所示:RAC 系统架 ...

  7. oracle 11g r2 rac中节点时间不同步,Oracle 11gR2 安装RAC错误之--时钟不同步

    系统环境: 操作系统:RedHat EL5 Cluster: Oracle GI(Grid Infrastructure) Oracle: Oracle 11.2.0.1.0 如图所示:RAC 系统架 ...

  8. ORACLE 11g R2 RAC群集堆栈的关闭过程分析

    下面的操作是一套基于Redhat 5.4 上面安装的 oracle 11g R2 11.2.0.3  rac来执行的. 通过观察命令的输出信息,我们可以分析出,oracle grid堆栈的关闭过程. ...

  9. Oracle 11g R2 RAC 高可用连接特性

    转自-阿里巴巴许春值 1.scan概念 什么叫 SCAN,SCAN (Single Client Access Name) 是 Oracle 从11g R2 开始推出的,客户端可以通过 SCAN 特性 ...

最新文章

  1. 如何度过二十多岁这段又穷又迷茫的岁月?
  2. C# DEBUG 调试信息打印及输出详解
  3. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
  4. 兰大计算机学院保研,兰州大学的保研情况怎么样?保研率高吗?
  5. 【联邦学习】FATE 集群部署 step2
  6. com.netflix.zuul.exception.ZuulException: Hystrix Readed time out
  7. Qmake变量variable
  8. pyppeteer:比selenium更高效的爬虫利器
  9. windows内存管理(2)
  10. 《spring-boot学习》-14-spring boot整合freeMarker模板
  11. 使用Scala编程计算级数
  12. oracle地址已被占用,ORA-12542 TNS 地址已被占用
  13. spyder5 更改为简体中文的方法,与spyder4不同
  14. C++基础入门(一)
  15. WECHAT 微信扫码关注公众号方法无法获取头像和昵称了
  16. 计算机作业我家乡的变化英语作文,我的变化英语作文3篇
  17. 分组急救技能竞赛方法在急诊专科护士培训中的运用
  18. 代理模式 静态代理、JDK动态代理、Cglib动态代理
  19. 在高德地图上添加折线
  20. 人类动作识别数据集AVA

热门文章

  1. 鸟什么羊什么的成语(鸟什么羊什么四字成语大全)
  2. 手机如何优雅地自动化登录校园网?
  3. python 习题练习一
  4. Delphi Thread 多线程编程(6)
  5. Rust学习教程03 - 安装Rust环境
  6. ADB logcat调试和端口占用解决办法
  7. 12个开源的后台管理系统
  8. 数据库优化八大通用绝招
  9. 超分辨率(CVPR2020) ~《Video Super-resolution with Temporal Group Attention》
  10. 基于java+SpringBoot+HTML+Mysql旅游网站设计与实现