一、Oracle GoldenGate介绍

  GoldenGate软件是一种基于日志的结构化数据复制软件。GoldenGate 能够实现大量交易数据的实时捕捉、变换和投递,实现源数据库与目标数据库的数据同步,保持亚秒级的数据延迟。

1、应用场景

1)高可用容灾

2)数据库迁移、升级(支持跨版本、异构数据库、零宕机时间、亚秒级恢复)

3)实时数据集成(支持异构数据库、多源数据库)

2、常用拓扑

(下图来自网络)

3、支持的平台和数据库

我这边几年前做过oracle到mysql的同步,也作过mysql到mysql的同步(支持不是很好,而且有DDL和DML的限制、字段类型限制等)

(下图来自网络)

4、OGG同步原理

源端通过抽取进程提取redo log或archive log日志内容,通过pump进程(TCP/IP协议)发送到目标端,最后目标端的rep进程接收日志、解析并应用到目标端,进而完成数据同步。

5、OGG相关进程

GoldenGate主要包含Manager进程、Extract进程、Pump进程、Replicat进程

1)Manager进程

不管是源端还是目标端必须并且只能有一个Manager进程,可以启动、关闭、监控其他进程的健康状态,报告错误事件、分配数据存储空间,发布阀值报告等。

2)Extract 进程

运行在数据库源端,负责从源端数据表或日志中捕获数据,然后捕获到的将写到本地trail文件。 想要复制的对象数据发生改变时,Extract进程 就会进行捕捉,当事务提交时,所有和该事务相关的日志记录被以事务为单元顺序的记录到trail文件中。Extract进程利用其内在的checkpoint机制,周期性的记录其读写的位置,实现断点同步。

Extract其实有两种捕获模式

A.传统模式

抽取方式:基于在线日志或归档日志进行抽取

B.Integrated模式( Oracle Goldengate 11g版本)

抽取方式: Logmining server负责以LCR格式从数据库日志中捕获数据变化,extract进程再将这些数据存入 trail文件。

传统模式是大家非常熟悉的模式啦,平时搭建的都是传统模式。但是Integrated模式是Oracle Goldengate 11g版本才出现的,很多人会比较陌生,有兴趣的朋友也可以去了解一番。

3)Pump进程(可选)

运行在数据库源端, 其作用是将源端产生的本地trail文件,把trail以数据块的形式通过TCP/IP 协议发送到目标端。

但是如果如果不使用trail文件,那么extract进程在抽取完数据以后,直接投递到目标端,生成远程trail文件,那么这时候,Pump进程就可以不用配置(存在)了。

4)Replicat进程

运行在数据库目标端 ,负责读取源端传送到目标端的trail文件中的内容,并将其解析为DML或 DDL语句, 然后应用到目标数据库中。

Replicat两种模式

A.传统模式:基于sql交付,最常用的一种方式

B.Integrated模式(OGG12c)

对应这种模式,官方文档是这样描述的

Replicat 操作的过程如下:

读取源端传输过来的 trail 文件;执行data 数据过滤和转换操作;

DML操作:根据commit顺序,构造LCR;DDL 操作:Replicat 进程直接apply;

Replicat 通过lightweight streaming 接口和目标库后台进程(Database inbound server)建立 连接;

将LCR传输到inbound server,然后apply 这些数据到目标数据库。

两个Apply Servers的Integrated模式

其实对于进程的Capture and Apply Modes可以参考一下官方文档:

http://docs.oracle.com/goldengate/1212/gg-winux/GIORA/process_mode.htm#GIORA554

5)Server Collector进程

运行于目标端,作用就是把Extract/Pump进程投递过来的数据块重新组装成Trail文件。运行期间无需任何配置。是一个完全自动的进程

好了对GoldenGate的进程介绍到处就告一段落了。

6、OGG相关目录

dirbdb
dirchk:检查点文件,记录了该进程的检查点信息
dircrd
dirdat:trail日志文件,存放收取接手的日志文件
dirdef:用来存放通过DEFGEN工具生成的源或目标端数据定义文件
dirdmp
dirout
dirpcs:用来存放进程状态文件
dirprm:用来存放参数文件,该进程所配置的参数(edit param 进程组名   就是配置该文件)
dirrpt:用来存放进程报告(report)文件,可以查看该进程运行时的报错信息等(view report 进程组名  就是看该文件)
dirsql:用来存放SQL脚本文件
dirtmp:当事物所需要的内存超过已分配内存时,缺省存在此目录
dirwlt
dirwww

二、Oracle GoldenGate安装

1、安装环境

 

源端

目标端

IP地址

10.20.11.176

10.20.32.23

操作系统

RHEL6.6_X64

RHEL6.6_X64

数据库

ORACLE_11.2.0.4

ORACLE_11.2.0.4

OGG

Version 12.2.0.1.1

Version 12.2.0.1.1

2、OGG下载

http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html
http://download.oracle.com/otn/goldengate/12301/123012_fbo_ggs_Linux_x64_shiphome.zip

3、OGG安装

1)源端:

tnsname配置

开启归档等

archive log list
alter database add supplemental log data;
select supplemental_log_data_min from v$database;
alter database force logging; (不是必须)
alter system set recyclebin=off;(更好的支持DDL)
show parameter recyclebin;
备注: 在oracle中可以通过rowid来定位某条记录,但是目标端的数据库和源端数据库的数据库可能完全不一样,所以无法通过rowid来确定源端数据库的逻辑变化,
这时附加日志supplemental log便登上了表演的舞台。数据库在开启附加日志功能后,对于源端的修改操作,oracle会同时追加能够唯一标示记录的列到redo log。
这样目标端数据库就可以知道源端发生了哪些具体的变化。

ogg安装(略)

2)目标端:

tnsname配置

开启归档等

ogg安装

[root@node1 oracle]# unzip 123012_fbo_ggs_Linux_x64_shiphome.zip
[root@node1 oracle]# mv fbo_ggs_Linux_x64_shiphome  /home/oracle/ogg_install
[root@node1 oracle]# chown -R oracle:oinstall /home/oracle/ogg_install
[oracle@node1 response]$ vi /home/oracle/ogg_install/Disk1/response/oggcore.rsp INSTALL_OPTION=ORA11g
SOFTWARE_LOCATION=/home/oracle/ogg_install
START_MANAGER=false
MANAGER_PORT=
DATABASE_LOCATION=
INVENTORY_LOCATION=/home/oracle/ogg_install/ogg_log
UNIX_GROUP_NAME=oinstall[oracle@node1 Disk1]$ ./runInstaller -silent -responseFile /home/oracle/ogg_install/Disk1/response/oggcore.rsp 

至此OGG软件安装成功,为方便管理OGG可以设置环境变量

[oracle@node1 ogg_install]$ vi ~/.bash_profile

PATH=$PATH:$HOME/bin:/home/oracle/ogg_install

[oracle@node1 ogg_install]$ source ~/.bash_profile

[oracle@node1 ~]$ ggsciOracle GoldenGate Command Interpreter for Oracle
Version 12.3.0.1.2 OGGCORE_12.3.0.1.0_PLATFORMS_171208.0005_FBO
Linux, x64, 64bit (optimized), Oracle 11g on Dec  8 2017 21:13:00
Operating system character set identified as UTF-8.Copyright (C) 1995, 2017, Oracle and/or its affiliates. All rights reserved.GGSCI (node1) 1> create subdirs  Creating subdirectories under current directory /home/oracleParameter file                 /home/oracle/ogg_install/dirprm: created.
Report file                    /home/oracle/ogg_install/dirrpt: created.
Checkpoint file                /home/oracle/ogg_install/dirchk: created.
Process status files           /home/oracle/ogg_install/dirpcs: created.
SQL script files               /home/oracle/ogg_install/dirsql: created.
Database definitions files     /home/oracle/ogg_install/dirdef: created.
Extract data files             /home/oracle/ogg_install/dirdat: created.
Temporary files                /home/oracle/ogg_install/dirtmp: created.
Credential store files         /home/oracle/ogg_install/dircrd: created.
Masterkey wallet files         /home/oracle/ogg_install/dirwlt: created.
Dump files                     /home/oracle/ogg_install/dirdmp: created.

至此真正的OGG安装完毕,可以进行下面的数据同步部署了。

三、Oracle GoldenGate数据同步

1、源端配置

1)创建数据同步用户、表空间

SQL> create tablespace ogg_tbs datafile '/U01/app/oracle/oradata/testdb/ogg_data.dbf' size 30M autoextend on next 10M;Tablespace created.SQL> create user ogguser identified by "ogguser";User created.SQL> alter user ogguser default tablespace ogg_tbs;User altered.SQL> grant create session to ogguser;Grant succeeded.SQL> grant dba to ogguser;Grant succeeded.

2)更改相关数据库配置

归档检查和更改:

SQL> archive log listDatabase log mode              Archive Mode
Automatic archival             Enabled
Archive destination           /oracle/archivelog
Oldest online log sequence     180
Next log sequence to archive   181
Current log sequence           181若处于非归档模式,则改为归档模式:
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.
SQL> alter database archivelog;
Database altered.
SQL> alter database open;
Database altered.

force_logging开启

SQL> select force_logging from v$database;
FOR
---
NO
SQL> alter database force logging;
Database altered.
SQL> select force_logging from v$database;
FOR
---
YES 

supplemental log开启

SQL> select supplemental_log_data_min from v$database;
SUPPLEME
--------
NOSQL> alter database add supplemental log data;
Database altered.##切换日志,使更改生效SQL> alter system switch logfile;
System altered.SQL> select supplemental_log_data_min from v$database;
SUPPLEME
--------
YES 

关闭回收站(10g需要,11g可以不关闭)

SQL> show parameter recyclebinNAME TYPE VALUE
------------------------------------ ----------- ------------------------------
recyclebin string onSQL> alter system set recyclebin=off;System altered.SQL> show parameter recyclebinNAME TYPE                                VALUE
------------------------------------ -------------------------------
recyclebin string                          OFF

3)配置manager进程

GGSCI (dg) 1> edit params mgr

port 7809
DYNAMICPORTLIST 7810-7880
--AUTORESTART ER *,RETRIES 5,WAITMINUTES 7
PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 7
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45

MANAGER进程参数配置说明:
PORT:指定服务监听端口;这里以7839为例,默认端口为7809
DYNAMICPORTLIST:动态端口:可以制定最大256个可用端口的动态列表,当指定的端口不可用时,管理进程将会从列表中选择一个可用的端口,源端和目标段的Collector、Replicat、GGSCI进程通信也会使用这些端口;
COMMENT:注释行,也可以用--来代替;
AUTOSTART:指定在管理进程启动时自动启动哪些进程;
AUTORESTART:自动重启参数设置:本处设置表示每7分钟尝试重新启动所有EXTRACT进程,共尝试5次;
PURGEOLDEXTRACTS:定期清理trail文件设置:本处设置表示对于超过7天的trail文件进行删除。
LAGREPORT、LAGINFO、LAGCRITICAL:
定义数据延迟的预警机制:本处设置表示MGR进程每隔1小时检查EXTRACT的延迟情况,如果超过了30分钟就把延迟作为信息记录到错误日志中,如果延迟超过了45分钟,则把它作为警告写到错误日志中。

4)配置extract进程

ogg 12版本可创建用户别名:

[oracle@dg ogg]$ ggsci
GGSCI (dg) 3> add credentialstore
Credential store created in ./dircrd/.
GGSCI (dg) 4> alter credentialstore add user  gguser alias ogguser
Password: Credential store in ./dircrd/ altered.
--这里就可以使用别名登录  (正常用户名密码 dblogin userid ggs,password ggs)GGSCI (dg) 3> dblogin useridalias ogguser
Successfully logged into database.

GGSCI (dg) 5> add extract EXT01,tranlog,begin now
EXTRACT added.
###可以通过命令add extract EXT01,tranlog,begin 2018-05-06 08:05:14,制定开始抽取的日志时间GGSCI (customerdg) 6> edit params EXT01##extract配置文件内容如下EXTRACT ext01
SETENV (ORACLE_HOME="/U01/app/oracle/product/11.2.0.4")
setenv (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
setenv (ORACLE_SID="testdb")
useridalias ogguser
GETTRUNCATES
REPORTCOUNT EVERY 1 MINUTES, RATE
DISCARDFILE ./dirrpt/ext01.dsc,APPEND,MEGABYTES 1000WARNLONGTRANS 2h,CHECKINTERVAL 10m
EXTTRAIL ./dirdat/exTRANLOGOPTIONS EXCLUDEUSER gguser
TRANLOGOPTIONS MINEFROMACTIVEDG
DBOPTIONS ALLOWUNUSEDCOLUMN
DYNAMICRESOLUTIONFETCHOPTIONS FETCHPKUPDATECOLS--table
table CUSTOMER.t_t1;
table CUSTOMER.t_t2;
table CUSTOMER.t_t3;

添加该extract对应的trail文件,用来存储抽取的数据。单个文件大小设置为100MB

GGSCI (dg) 1> add exttrail /home/oracle/ogg_install/dirdat/ex,extract ext01 MEGABYTES 100EXTTRAIL added.

5)配置pump进程

为了避免primary extract受到网络的影响,我们在源端和目标端之间增加一个data pump,这样的话,primary extract负责将数据从源数据中抽取出来,存在本地的trail文件中,然后data pump进程负责将本地trail文件中的数据传输到目标端的trail文件里。这样能提高更高的灵活性和可用性(当源和目标端之间的网络出现故障时,primary extract会继续抽取数据存到本地的trail中)

GGSCI (dg) 5> edit params pump01EXTRACT pump01
RMTHOST 10.20.32.23, MGRPORT 7809, compress
PASSTHRU
RMTTRAIL /home/oracle/ogg_install/dirdat/rt
DYNAMICRESOLUTION--table
table CUSTOMER.t_t1;
table CUSTOMER.t_t2;
table CUSTOMER.t_t3;GGSCI (dg) 14> add extract pump01,exttrailsource ./dirdat/ex
EXTRACT added.
GGSCI (dg) 15> add rmttrail  /home/oracle/ogg_install/dirdat/rt,extract pump01
RMTTRAIL added.

2、目标端配置

1)创建数据同步用户、表空间

SQL> create tablespace ogg_tbs datafile '/U01/app/oracle/oradata/testdb/ogg_data.dbf' size 30M autoextend on next 10M;Tablespace created.SQL> create user ogguser identified by "ogguser";User created.SQL> alter user ogguser default tablespace ogg_tbs;User altered.SQL> grant create session to ogguser;Grant succeeded.SQL> grant dba to ogguser;Grant succeeded.

2)归档开启

3)配置manager进程

GGSCI (node1) 1>  add credentialstoreCredential store created.GGSCI (node1) 2> alter credentialstore add user  ogguser alias ogguser
Password: Credential store altered.GGSCI (node1) 3> dblogin useridalias ogguser
Successfully logged into database.

GGSCI (node1 as ogguser@testdb) 4> edit params mgr

port 7809
DYNAMICPORTLIST 7810-7880
--AUTORESTART ER *,RETRIES 5,WAITMINUTES 7
PURGEOLDEXTRACTS ./dirdat/*,usecheckpoints, minkeepdays 7
LAGREPORTHOURS 1
LAGINFOMINUTES 30
LAGCRITICALMINUTES 45

GGSCI (node1) 1> start mgr
Manager started.GGSCI (node1) 2> info allProgram     Status      Group       Lag at Chkpt  Time Since ChkptMANAGER     RUNNING 

4)配置replicate进程

REPLICAT rep01
SETENV (ORACLE_HOME="/U01/app/oracle/product/11.2.0.4")
setenv (NLS_LANG="AMERICAN_AMERICA.AL32UTF8")
setenv (ORACLE_SID="testdb")
useridalias ogguser
REPORT AT 01:59
REPORTCOUNT EVERY 30 MINUTES, RATE
REPERROR DEFAULT, ABENDHANDLECOLLISIONS
assumetargetdefs
DISCARDFILE ./dirrpt/rep01.dsc, APPEND, MEGABYTES 1000
GETTRUNCATES
ALLOWNOOPUPDATES--table
map gguser.t_t1,    target gguser.t_t1;
map gguser.t_t2,      target gguser.t_t2;
map gguser.t_t3,      target gguser.t_t3;

5)、添加checkpoint表

GGSCI (node1) 5> dblogin useridalias ogguser
Successfully logged into database.GGSCI (node1 as ogguser@testdb) 6> add checkpointtable ogguser.checkpointtabSuccessfully created checkpoint table ogguser.checkpointtab.
GGSCI (node1 as ogguser@testdb) 7> add replicat rep01,exttrail   /home/oracle/ogg_install/dirdat/rt,checkpointtable ogguser.checkpointtab
REPLICAT added.

3、源端进程启动

1)源端启动mgr进程、extract进程、pump进程

GGSCI (dg) 20> start mgr
Manager started.GGSCI (dg as gguser@testdb) 9> start ext01
Sending START request to MANAGER ...
EXTRACT EXT01 startingGGSCI (dg as gguser@testdb) 12> start PUMP01Sending START request to MANAGER ...
EXTRACT PUMP01 startingGGSCI (dg as gguser@testdb) 14> info allProgram     Status      Group       Lag at Chkpt  Time Since ChkptMANAGER     RUNNING
EXTRACT     RUNNING     EXT01       00:00:03      00:00:03
EXTRACT     RUNNING     PUMP01      00:00:00      00:00:08  

4、数据库初始化

1)源端导出数据

##创建导出文件目录、查看到处点SCN

select * from dba_directories;
create directory DATA_PUMP_DIR as '/U01/oracle/oggdump';col  CURRENT_SCN  format 999999999999999999999999;
set line 200;
set pagesize 20000;select current_scn from v$database;
select dbms_flashback.get_system_change_number current_scn from dual;

##导出表数据

##只导出数据
expdp \'/ as sysdba\' directory=DATA_PUMP_DIR file=20180506.dmp tables=ogguser.t_t1,ogguser.t_t2,ogguser.t3  grants=n statistics=none triggers=n compress=n content=data_only FLASHBACK_SCN=54995990597  log=expdp.log
##只导出表结构
expdp \'/ as sysdba\' directory=DATA_PUMP_DIR file=20180506.dmp tables=ogguser.t_t1,ogguser.t_t2,ogguser.t3  grants=n statistics=none triggers=n compress=n content=METADATA_ONLY FLASHBACK_SCN=54995990597  log=expdp.log
##导出表结构和数据
expdp \'/ as sysdba\' directory=DATA_PUMP_DIR file=20180506.dmp tables=ogguser.t_t1,ogguser.t_t2,ogguser.t3  grants=n statistics=none triggers=n compress=n  FLASHBACK_SCN=54995990597  log=expdp.log

2)目标端数据导入

##若表结构事前没有创建好,需要表结构和表数据一起导入,若表结构已创建,只需要导入表数据即可

##导入表数据
impdp \'/ as sysdba\' DIRECTORY=DATA_PUMP_DIR  DUMPFILE=20180506.dmp    REMAP_SCHEMA=source_user:target_user content=data_only LOGFILE=impdp.log
##导入表结构
impdp \'/ as sysdba\' DIRECTORY=DATA_PUMP_DIR  DUMPFILE=20180506.dmp    REMAP_SCHEMA=source_user:target_user content=METADATA_ONLY LOGFILE=impdp.log
##导入表结构和数据
impdp \'/ as sysdba\' DIRECTORY=DATA_PUMP_DIR  DUMPFILE=20180506.dmp    REMAP_SCHEMA=source_user:target_user  LOGFILE=impdp.log                      

5、目标端进程启动

目标端启动mgr、replicate进程

GGSCI (node1 as ogguser@testdb) 9> start mgr
Manager started.GGSCI (node1) 2> start rep01,aftercsn 54995990597Sending START request to MANAGER ...
REPLICAT REP01 startingGGSCI (node1) 4> info allProgram     Status      Group       Lag at Chkpt  Time Since ChkptMANAGER     RUNNING
REPLICAT    RUNNING     REP01       00:00:00      00:00:00   

四、Oracle GoldenGate管理

1、进程启动、关闭以及状态查看

启动:

GGSCI (node1) 1> start mgr
Manager started.##可以通过SCN启动
start rep01,aftercsn 54995990597
##可以通过时间启动
add extract EXT01,tranlog,begin 2018-05-06 08:05:14

关闭:

GGSCI (node1) 3> stop mgr
Manager process is required by other GGS processes.
Are you sure you want to stop it (y/n)?yesSending STOP request to MANAGER ...
Request processed.
Manager stopped.

状态查看:

GGSCI (node1) 1> info allProgram     Status      Group       Lag at Chkpt  Time Since ChkptMANAGER     RUNNING
REPLICAT    STOPPED     REP01       00:00:00      00:14:29    GGSCI (node1) 2> info rep01REPLICAT   REP01     Initialized   2018-05-04 16:29   Status STOPPED
Checkpoint Lag       00:00:00 (updated 00:14:51 ago)
Log Read Checkpoint  File /home/oracle/ogg_install/dirdat/rt000000000First Record  RBA 0

2、进程添加、编辑、删除、配置文件查看

进程文件添加:

##抽取进程
add extract ext5,tranlog,begin now
add exttrail  /usr/local/mysql/ogg/dirdat/ex,extract ext5
##pump进程
add extract pump01,exttrailsource  /usr/local/mysql/ogg/dirdat/ex
add rmttrail /oracle/app/ogg/dirdat/pt,extract pump5
##检查点
add checkpointtable ogg.checkpointtab
add replicat rep2,exttrail   /oracle/app/ogg/dirdat/pt,checkpointtable ogg.checkpointtab
##别名
add credentialstore
alter credentialstore add user  ogguser alias ogguser

文件编辑:

##管理进程文件
edit params mgr
##抽取进程文件
edit params ext01
##传输进程文件
edit params pump01
##应用进程文件
edit params rep01

文件查看:

##管理进程文件
view params mgr
##抽取进程文件
view params ext01
##传输进程文件
view params pump01
##应用进程文件
view params rep01

文件删除:

GGSCI (node1) 5> dblogin useridalias ogguser
Successfully logged into database.
GGSCI (node1 as ogguser@testdb) 8> delete checkpointtable ogguser.checkpointtab
This checkpoint table may be required for other installations.  Are you sure you want to delete this checkpoint table? yesSuccessfully deleted checkpoint table ogguser.checkpointtab.GGSCI (node1 as ogguser@testdb) 9> delete rep01
Deleted REPLICAT REP01.

3、SCN和时间互转

##SCN转为时间戳
select to_char(scn_to_timestamp(54995990597),'yyyy-mm-dd hh24:mi:ss') from dual;
##时间戳转为为SCN
select timestamp_to_scn(to_timestamp('2018-05-06 08:05:14','yyyy-mm-dd hh24:mi:ss')) from dual;

Oracle GoldenGate 详解相关推荐

  1. Oracle ASM 详解 收藏

    Oracle ASM 详解 ASM:Automatic Storage Management, 是Oracle 主推的一种面向Oracle的存储解决方案, ASM 和 RDBMS 非常相似,ASM 也 ...

  2. oracle分区表编程,Oracle分区表详解

    当前位置:我的异常网» 编程 » Oracle分区表详解 Oracle分区表详解 www.myexceptions.net  网友分享于:2013-10-28  浏览:25次 Oracle分区表详解 ...

  3. oracle有哪两种内存结构,Oracle体系结构详解(物理构造,内存结构和逻辑结构)...

    当前位置:我的异常网» 数据库 » Oracle体系结构详解(物理构造,内存结构和逻辑结构 Oracle体系结构详解(物理构造,内存结构和逻辑结构) www.myexceptions.net  网友分 ...

  4. Oracle 冷备份详解【实战案例】

    Oracle 冷备份详解 --准备工作 select * from v$database; select file_name from dba_data_files; create tablespac ...

  5. oracle里面asm的作用,Oracle ASM 详解

    Oracle ASM 详解 ASM:Automatic Storage Management, 是Oracle 主推的一种面向Oracle的存储解决方案, ASM 和 RDBMS 非常相似,ASM 也 ...

  6. Oracle 存储过程详解(上)

    目录 一.存储过程与存储函数的定义 二.创建 / 执行存储过程所需的权限 1.resource权限 2.create.execute procedure权限 三.创建 / 执行存储过程 四.变量与参数 ...

  7. Oracle 数据字典详解

    Oracle 数据字典详解 什么叫数据字典? 数据字典指的是描述数据的数据. 举个例子:我们在数据库里面创建了一个表,这个表位于哪个数据文件.这个表有哪些列.这个表的每一个列的数据类型.这个表的约束等 ...

  8. Oracle索引详解(索引的原理,创建索引,删除索引,修改索引等)

    Oracle索引详解 一.索引概述 Oracle作为关系型数据库,用户查找数据与行的物理位置无关,表中的每一行均用一个ROWID来标识,当Oracle数据库中存储海量的记录时,就意味着有大量的ROWI ...

  9. oracle list 分区详解,ORACLE分区表详解

    此文从以下几个方面来整理关于分区表的概念及操作:1.表空间及分区表的概念 2.表分区的具体作用 3.表分区的优缺点 4.表分区的几种类型及操作方法 5.对表分区的维护性操作. (1.) 表空间及分区表 ...

最新文章

  1. 为什么决策树相关的算法不需要标准化?那么那些模型需要标准化那?
  2. H3C大数据产品介绍
  3. mac装windows遇到的问题总结
  4. 消息队列软件产品大比拼
  5. 参数估计Bayesian方法的困惑点
  6. c语言1到20找最大和最小相邻,一组数据里面怎样查找相邻和相同的整数算法设计解决方案...
  7. 【数据结构】二叉树的存储和遍历
  8. idea无法导入主题jar包_总结IDEA开发的26个常用设置
  9. mysql 单块读 多块读_dbfilesequentialread等待事件
  10. springboot之提高maven的速度
  11. (转)美国进入智能投顾竞争时代
  12. 推荐9个web前端模板框架
  13. 信道估计之LMMSE估计
  14. Python-修改图片分辨率
  15. 某电商客户数据价值分析项目
  16. 盘点 11 月份 火火火 的 GitHub 项目
  17. 无人驾驶汽车系统入门(十一)——深度前馈网络,深度学习的正则化,交通信号识别
  18. JavaEE中,考勤(签到签退)功能的实现
  19. 综述2 | 基于深度学习的行人重识别
  20. MIT_BIH数据库介绍

热门文章

  1. wordpress二次开发技巧-functions.php篇
  2. 比较两种php调用Java对象的方法
  3. snoopy(强大的PHP采集类) 实例应用 1
  4. Shell编程: Shell 变量
  5. 非负矩阵分解推导(NMF)
  6. Linux——umask使用详解
  7. python 压缩文件
  8. mysql关联查询 事务 索引 外键
  9. 【AI视野·今日Robot 机器人论文速览 第二十期】Thu, 8 Jul 2021
  10. MySQL—delete和truncate的区别