实验环境
主机名   IP地址
rac01     192.168.56.10
rac02     192.168.56.20
rac-scan 192.168.56.30

目标库:
ora-ogg  192.168.56.40

实验是从rac环境到单实例的ogg同步

1. 查看rac节点是否有ASM的监听注册(双节点)

  1. [oracle@rac01 ~]$ lsnrctl services
  2.  
  3. LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 22-MAY-2017 16:07:08
  4.  
  5. Copyright (c) 1991, 2013, Oracle. All rights reserved.
  6.  
  7. Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
  8. Services Summary...
  9. Service "+ASM" has 1 instance(s).
  10. Instance "+ASM1", status READY, has 1 handler(s) for this service...
  11. Handler(s):
  12. "DEDICATED" established:1 refused:0 state:ready
  13. LOCAL SERVER
  14. Service "orcl" has 1 instance(s).
  15. Instance "orcl1", status READY, has 1 handler(s) for this service...
  16. Handler(s):
  17. "DEDICATED" established:0 refused:0 state:ready
  18. LOCAL SERVER
  19. Service "orclXDB" has 1 instance(s).
  20. Instance "orcl1", status READY, has 1 handler(s) for this service...
  21. Handler(s):
  22. "D000" established:0 refused:0 current:0 max:1022 state:ready
  23. DISPATCHER <machine: rac01, pid: 4164>
  24. (ADDRESS=(PROTOCOL=tcp)(HOST=rac01)(PORT=44556))
  25. The command completed successfully

如果没有,需要用grid用户在$ORACLE_HOME/network/admin/listener.ora文件中添加静态注册,然后reload listener(双节点):

  1. [grid@rac01 admin]$ vi listener.ora
  2. LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))) # line added by Agent
  3. LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent
  4. ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent
  5. ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent
  6.  
  7. SID_LIST_LISTENER =
  8. (SID_LIST =
  9. (SID_DESC =
  10. (GLOBAL_DBNAME = +ASM)
  11. (ORACLE_HOME=/u01/app/11.2.0/grid)
  12. (SID_NAME = +ASM1)
  13. )
  14. )

2. 用oracle用户编辑$ORACLE_HOME/network/admin/tnsnames.ora文件,使其用别名可连接ASM实例和数据库

  1. [oracle@rac01 admin]$ cat tnsnames.ora
  2. # tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
  3. # Generated by Oracle configuration tools.
  4.  
  5. rac =
  6. (DESCRIPTION =
  7. (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))
  8. (CONNECT_DATA =
  9. (SERVER = DEDICATED)
  10. (SERVICE_NAME = orcl)
  11. )
  12. )
  13.  
  14. ASM =
  15. (DESCRIPTION =
  16. (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.10)(PORT = 1521))
  17. (CONNECT_DATA =
  18. (SERVER = DEDICATED)
  19. (SERVICE_NAME = +ASM)
  20. (SID_NAME = +ASM1)
  21. )
  22.  
  23. )

3. 查看endpoints_listener.ora文件配置是否合理

  1. [grid@rac01 admin]$ cat endpoints_listener.ora
  2. LISTENER_RAC01=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=rac01-vip)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.10)(PORT=1521)(IP=FIRST)))) # line added by Agent

4.测试连接:

  1. [oracle@rac01 ~]$ sqlplus sys/oracle@ASM as sysasm
  2.  
  3. SQL*Plus: Release 11.2.0.4.0 Production on Mon May 22 16:16:11 2017
  4.  
  5. Copyright (c) 1982, 2013, Oracle. All rights reserved.
  6.  
  7. Connected to:
  8. Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
  9. With the Real Application Clusters and Automatic Storage Management options
  10.  
  11. SQL> select instance_name from v$instance;
  12.  
  13. INSTANCE_NAME
  14. ----------------
  15. +ASM1
  16.  
  17. [oracle@rac01 ~]$ sqlplus sys/oracle@rac as sysdba
  18.  
  19. SQL*Plus: Release 11.2.0.4.0 Production on Mon May 22 16:16:49 2017
  20.  
  21. Copyright (c) 1982, 2013, Oracle. All rights reserved.
  22.  
  23. Connected to:
  24. Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
  25. With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
  26. Data Mining and Real Application Testing options
  27.  
  28. SQL> select instance_name from v$instance;
  29.  
  30. INSTANCE_NAME
  31. ----------------
  32. orcl1

5. 安装acfs(ASM Cluster File System)

  1. [grid@rac01 ~]$ acfsload -s
  2. ACFS-9228: usage: acfsload {start|stop} [-s]
  3. [grid@rac01 ~]$ acfsload start
  4. ACFS-9130: Root access required
  5. [grid@rac01 ~]$ exit
  6. logout
  7. [root@rac01 ogg]# cd /u01/app/11.2.0/grid/bin/
  8. [root@rac01 bin]# ./acfsload start
  9. ACFS-9391: Checking for existing ADVM/ACFS installation.
  10. ACFS-9392: Validating ADVM/ACFS installation files for operating system.
  11. ACFS-9393: Verifying ASM Administrator setup.
  12. ACFS-9308: Loading installed ADVM/ACFS drivers.
  13. ACFS-9327: Verifying ADVM/ACFS devices.
  14. ACFS-9156: Detecting control device '/dev/asm/.asm_ctl_spec'.
  15. ACFS-9156: Detecting control device '/dev/ofsctl'.
  16. ACFS-9322: completed

6. 这里可以使用挂在上来的磁盘或者现有的ASM磁盘做ogg的软件目录
我采用在现有ASM磁盘上创建一个ASM卷并挂载

  1. [grid@rac01 ~]$ sqlplus / as sysasm
  2.  
  3. SQL*Plus: Release 11.2.0.4.0 Production on Fri May 19 15:43:24 2017
  4.  
  5. Copyright (c) 1982, 2013, Oracle. All rights reserved.
  6.  
  7. Connected to:
  8. Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
  9. With the Real Application Clusters and Automatic Storage Management options
  10.  
  11. SQL> alter diskgroup DATA add volume acfsload size 1G;
  12.  
  13. Diskgroup altered.
  14.  
  15. SQL> quit
  16.  
  17. [grid@rac01 ~]$ ll /dev/asm*
  18. brw-rw---- 1 grid oinstall 8, 32 May 19 15:44 /dev/asm-disk1
  19. brw-rw---- 1 grid oinstall 8, 16 May 19 15:44 /dev/asm-disk2
  20. brw-rw---- 1 grid oinstall 8, 48 May 19 10:33 /dev/asm-disk3
  21.  
  22. /dev/asm:
  23. total 0
  24. brwxrwx--- 1 root dba 252, 107521 May 19 15:44 acfsload-210

7. 创建acfs挂载目录,在两个节点都要创建相同目录

  1. [root@rac01 deinstall]# mkdir -p /u01/app/acfsmounts/acfsload-210
  2. [root@rac02 deinstall]# mkdir -p /u01/app/acfsmounts/acfsload-210

8. 用mkfs创建文件系统

  1. [root@rac01 deinstall]# mkfs -t acfs -n acfs01 /dev/asm/acfsload-210
  2. shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
  3. mkfs.acfs: version = 11.2.0.4.0
  4. mkfs.acfs: on-disk version = 39.0
  5. mkfs.acfs: volume = /dev/asm/acfsload-210
  6. mkfs.acfs: volume size = 1073741824
  7. mkfs.acfs: Format complete.

9. 用acfsuit命令注册文件系统

  1. [root@rac01 bin]# acfsutil registry -a -f /dev/asm/acfsload-210 /u01/app/acfsmounts/acfsload-210
  2. acfsutil registry: mount point /u01/app/acfsmounts/acfsload-210 successfully added to Oracle Registry

10. 使用mount.acfs -o all命令挂载文件系统

  1. [root@rac01 bin]# mount.acfs -o all
  2. [root@rac01 bin]# df -h
  3. Filesystem Size Used Avail Use% Mounted on
  4. /dev/mapper/vg_rac01-LogVol01
  5. 21G 13G 6.8G 65% /
  6. tmpfs 1.9G 134M 1.8G 7% /dev/shm
  7. /dev/sda1 190M 42M 138M 24% /boot
  8. /dev/asm/acfsload-210
  9. 1.0G 79M 946M 8% /u01/app/acfsmounts/acfsload-210

11. 改变文件系统的归属,改为Oracle:oinstall

  1. [root@rac01 bin]# chown oracle:oinstall /u01/app/acfsmounts/acfsload-210
  2. [root@rac01 bin]# ll -d /u01/app/acfsmounts/acfsload-210
  3. drwxrwx--- 4 oracle oinstall 4096 May 19 15:53 /u01/app/acfsmounts/acfsload-210

12. 安装ogg软件
创建文件目录:mkdir /tmp/orasoft
将安装文件上传到该目录下面并解压

  1. [oracle@rac01 orasoft]$ ls
  2. fbo_ggs_Linux_x64_shiphome fbo_ggs_Linux_x64_shiphome.zip OGG-12.2.0.1.1-ReleaseNotes.pdf OGG-12.2.0.1-README.txt
    使用图形化安装,指定ogg_homeoracle用户的oracle_home,安装11gogg
    [oracle@rac01 ~]$ /tmp/orasoft/fbo_ggs_Linux_x64_shiphome/Disk1/runInstalle

13. 配置oracle环境变量,需要加入LD_LIBRARY_PATH及OGG_HOME等

  1. [oracle@rac01 orasoft]$ cat ~/.bash_profile
  2. # .bash_profile
  3.  
  4. # Get the aliases and functions
  5. if [ -f ~/.bashrc ]; then
  6. . ~/.bashrc
  7. fi
  8.  
  9. # User specific environment and startup programs
  10. PATH=$PATH:$HOME/bin
  11.  
  12. export PATH
  13. export ORACLE_SID=orcl1
  14. export ORACLE_BASE=/u01/app/oracle
  15. export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
  16. export ORACLE_UNQNAME=orcl
  17. #export PATH=$ORACLE_HOME/bin:$PATH
  18. umask 022
  19.  
  20. export OGG_HOME=/u01/app/acfsmounts/acfsload-210/ogg
  21. export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:$ORACLE_HOME/rdbms/lib
  22. export PATH=$PATH:$ORACLE_HOME/bin:$OGG_HOME

14. 配置mgr进程

  1. [oracle@rac01 ~]$ cd /u01/app/acfsmounts/acfsload-210/ogg/
  2. [oracle@rac01 ogg]$ ggsci
  3.  
  4. Oracle GoldenGate Command Interpreter for Oracle
  5. Version 12.2.0.1.1 OGGCORE_12.2.0.1.0_PLATFORMS_151211.1401_FBO
  6. Linux, x64, 64bit (optimized), Oracle 11g on Dec 12 2015 00:54:38
  7. Operating system character set identified as UTF-8.
  8.  
  9. Copyright (C) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
  10.  
  11. GGSCI (rac01) 1> edit params mgr
  12. GGSCI (rac01) 2> view params mgr
  13.  
  14. PORT 7808
  15. autostart er *
  16. autorestart er *
  17.  
  18. GGSCI (rac01) 3> start mgr
  19. GGSCI (rac01) 4> info mgr
  20.  
  21. Manager is running (IP port rac01.7808, Process ID 18924).

15. 目标库安装ogg,方法同样,目标安装在/ogg目录下

16. 在rac库上创建用户,配置,授权等以及开启ddl复制相关脚本

  1. SQL> create user ogg identified by ogg;
  2.  
  3. User created.
  4.  
  5. SQL> grant connect,resource,unlimited tablespace to ogg;
  6.  
  7. User created.
  8.  
  9. SQL> create tablespace ogg datafile '+data' size 1g autoextend off;
  10.  
  11. Tablespace created.
  12.  
  13. SQL> alter user ogg default tablespace ogg;
  14.  
  15. User altered.
  16.  
  17. SQL> select username,default_tablespace from dba_users where username='OGG';
  18.  
  19. USERNAME DEFAULT_TABLESPACE
  20. ------------------------------ ------------------------------
  21. OGG OGG
  22.  
  23. SQL> @sequence.sql
  24.  
  25. SQL> alter database add supplemental log data (primary key) columns;
  26.  
  27. Database altered.
  28.  
  29. SQL> alter database add supplemental log data (foreign key) columns;
  30.  
  31. Database altered.
  32.  
  33. SQL> alter database add supplemental log data (unique) columns;
  34.  
  35. Database altered.
  36.  
  37. SQL> alter system archive log current;
  38.  
  39. System altered.
  40.  
  41. SQL> grant execute on utl_file to ogg;
  42.  
  43. Grant succeeded.
  44.  
  45. SQL> @marker_setup.sql
  46.  
  47. SQL> @ddl_setup .sql
  48.  
  49. SQL> @role_setup.sql
  50.  
  51. SQL> grant ggs_ggsuser_role to ogg;
  52.  
  53. Grant succeeded.
  54.  
  55. SQL> @ddl_enable.sql
  56.  
  57. Trigger altered.
  58.  
  59. SQL> @ddl_pin ogg
  60.  
  61. PL/SQL procedure successfully completed.
  62.  
  63. PL/SQL procedure successfully completed.
  64.  
  65. PL/SQL procedure successfully completed.
  66.  
  67. SQL> alter database add supplemental log data;
  68.  
  69. Database altered.
  70.  
  71. SQL> alter system set enable_goldengate_replication=true scope=both;
  72.  
  73. System altered.

17. 创建同步的用户test,同步test用户下面的数据

  1. SQL> create user test identified by test;
  2.  
  3. User created.
  4.  
  5. SQL> grant connect,resource to test;
  6.  
  7. Grant succeeded.

18. 源端配置extract group抽取数据

  1. [oracle@rac01 ogg]$ ggsci
  2.  
  3. GGSCI (rac01) 1>
  4. GGSCI (rac01) 2> dblogin userid ogg password ogg
  5. Successfully logged into database.
  6.  
  7. GGSCI (rac01 as ogg@orcl1) 3> add extract testext,tranlog,begin now,threads 2
  8. EXTRACT added.
  9.  
  10. GGSCI (rac01 as ogg@orcl1) 4> add exttrail ./dirdat/et,extract testext
  11. EXTTRAIL added.
  12.  
  13. GGSCI (rac01 as ogg@orcl1) 5> edit params testext
  14.  
  15. EXTRACT testext
  16. SETENV (ORACLE_HOME = "/u01/app/oracle/product/11.2.0/db_1")
  17. USERID ogg@rac, PASSWORD ogg
  18. TRANLOGOPTIONS ASMUSER sys@ASM,ASMPASSWORD oracle
  19. EXTTRAIL ./dirdat/et
  20. DYNAMICRESOLUTION
  21. DDL INCLUDE ALL
  22. TABLE test.*;

19. 源端配置data pump传送数据

  1. [oracle@rac01 ogg]$ ggsci
  2.  
  3. GGSCI (rac01) 2> dblogin userid ogg password ogg
  4. Successfully logged into database.
  5.  
  6. GGSCI (rac01 as ogg@orcl1) 3> add extract testpump,exttrailsource ./dirdat/et,begin now
  7. EXTRACT added.
  8.  
  9. GGSCI (rac01 as ogg@orcl1) 4> add rmttrail ./dirdat/rt,extract testpump
  10. RMTTRAIL added.
  11.  
  12. GGSCI (rac01 as ogg@orcl1) 5> edit params testpump
  13.  
  14. EXTRACT testpump
  15. rmthost 192.168.56.40, mgrport 7808
  16. rmttrail ./dirdat/rt
  17. passthru
  18. table test.*;
  19.  
  20. GGSCI (rac01 as ogg@orcl1) 6> info all
  21.  
  22. Program Status Group Lag at Chkpt Time Since Chkpt
  23.  
  24. MANAGER RUNNING
  25. EXTRACT STOPPED EXTDATA 00:00:00 00:53:31
  26. EXTRACT STOPPED TESTPUMP 00:00:00 00:04:01

20. 目标库配置:

  1. SQL> create user ogg identified by ogg;
  2.  
  3. User created.
  4.  
  5. SQL> grant connect,resource,dba to ogg;
  6.  
  7. Grant succeeded.
  8.  
  9. SQL> create user test identified by test;
  10.  
  11. User created.
  12.  
  13. SQL> grant connect ,resource to test;
  14.  
  15. Grant succeeded.
  16.  
  17. SQL> alter system set enable_goldengate_replication=true scope=both;
  18.  
  19. System altered.
  20.  
  21. SQL> exit
  22.  
  23. [oracle@ora-ogg ogg]$ ./ggsci
  24. GGSCI (ora-ogg) 2> dblogin userid ogg password ogg
  25. Successfully logged into database.
  26.  
  27. GGSCI (ora-ogg as ogg@orcl) 3> add replicat testrpt,exttrail ./dirdat/rt,nodbcheckpoint
  28. REPLICAT added.
  29.  
  30. GGSCI (ora-ogg as ogg@orcl) 4> edit params testrpt
  31. REPLICAT testrpt
  32. setenv (ORACLE_SID=orcl)
  33. SETENV (ORACLE_HOME = "/u01/app/oracle/product/11.2.0/db_1")
  34. USERID ogg@orcl,PASSWORD ogg
  35. ASSUMETARGETDEFS
  36. HANDLECOLLISIONS
  37. REPERROR (DEFAULT, DISCARD)
  38. DDLERROR DEFAULT DISCARD
  39. DDLOPTIONS REPORT
  40. DISCARDFILE ./repsz.dsc,append,megabytes 100
  41. MAP test.*, TARGET test.*;
  42.  
  43. GGSCI (ora-ogg as ogg@orcl) 6> info all
  44.  
  45. Program Status Group Lag at Chkpt Time Since Chkpt
  46.  
  47. MANAGER STOPPED
  48. REPLICAT STOPPED TESTRPT 00:00:00 00:01:32

21. 启动各个进程:

  1. 启动顺序
  2. sourcetarget端的mgr -- > source端的extract --> target端的replicat --> source端的extract pump
  3.  
  4. source:
  5.  
  6. GGSCI (rac01 as ogg@orcl1) 11> info all
  7.  
  8. Program Status Group Lag at Chkpt Time Since Chkpt
  9.  
  10. MANAGER RUNNING
  11. EXTRACT RUNNING TESTEXT 00:00:00 00:00:08
  12. EXTRACT RUNNING TESTPUMP 00:00:00 00:00:02
  13.  
  14. target:
  15.  
  16. GGSCI (ora-ogg as ogg@orcl) 19> info all
  17.  
  18. Program Status Group Lag at Chkpt Time Since Chkpt
  19.  
  20. MANAGER RUNNING
  21. REPLICAT RUNNING TESTRPT 00:00:00 00:00:01

22. 开始同步

总结:遇到的坑:

  1. 1. ggsci无法进入,报错如下:
  2. [oracle@rac01 ~]$ ggsci
  3. Cannot load ICU resource bundle 'ggMessage', error code 2 - No such file or directory
  4. Aborted (core dumped)
  5.  
  6. 原因1ggsci必须在ogg的安装目录下输入才能进入;
  7. 原因2:未配置oracle用户的环境变量。
  8.  
  9. 2. 无法启动REPLICAT
  10. GGSCI (ora-ogg as ogg@orcl) 7> start testrpt
  11.  
  12. Sending START request to MANAGER ...
  13.  
  14. ERROR: Access denied.
  15.  
  16. 2017-05-22 15:29:10 WARNING OGG-01742 Command sent to MGR MGR returned with an ERROR response.
  17. 告警中日志错误
  18. 2017-05-22 15:29:10 WARNING OGG-00936 Oracle GoldenGate Manager for Oracle, mgr.prm: Access denied (request from 192.168.56.40, rule #0).
  19.  
  20. 解决办法,在目标库mgr配置文件中添加访问主机IP
  21. GGSCI (ora-ogg as ogg@orcl) 8> edit params mgr
  22. PORT 7808
  23. ACCESSRULE, PROG *, IPADDR 192.168.*.*, ALLOW
  24.  
  25. 3. 一些命令
  26. 开启mgr start mgr
  27. 开启其他进程: start * / start 进程名
  28. 关闭相反
  29.  
  30. 查看参数:view params 进程名
  31. 查看日志:view report 进程名
  32. 查看日志:OGG_HOME/ggserr.log

ORACLE RAC+OGG配置的更多相关文章

  1. JDBC连接oracle RAC数据库配置

    RAC的配置如下: node1:ip地址192.168.60.132,实例名:rac1,主机名:rac1 node2:ip地址192.168.60.144,实例名:rac2,主机名:rac2 RAC服 ...

  2. Oracle 11gR2 RAC网络配置,更改public ip、vip和scanip

    Oracle 11gR2 RAC网络配置,更改public ip.vip和scanip 转载黑裤子 发布于2018-10-30 01:08:02 阅读数 2898  收藏 展开 转载. https:/ ...

  3. 【Oracle 集群】Linux下Oracle RAC集群搭建之Oracle DataBase安装(八)

    Oracle 11G RAC数据库安装(八) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总 ...

  4. 【Oracle 集群】Linux下Oracle RAC集群搭建之基本测试与使用(九)

    Oracle 11G RAC数据库安装(九) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总 ...

  5. 【转】【Oracle 集群】Linux下Oracle RAC集群搭建之基本测试与使用(九)

    原文地址:http://www.cnblogs.com/baiboy/p/orc9.html   阅读目录 目录 检查RAC状态 检查创建的数据库 全部参考文献 相关文章 Oracle 11G RAC ...

  6. 【转】【Oracle 集群】Linux下Oracle RAC集群搭建之Oracle DataBase安装(八)

    原文地址:http://www.cnblogs.com/baiboy/p/orc8.html   阅读目录 目录 数据库安装 参考文献 相关文章 Oracle 11G RAC数据库安装(八) 概述:写 ...

  7. 安装Oracle RAC 11g

    1.Oracle Enterprise Linux 和 iSCSI 上构建 Oracle RAC 11g 集群 2.Oracle RAC 的所有共享磁盘存储将基于 iSCSI,iSCSI 使用在第三个 ...

  8. Oracle RAC客户端tnsnames.ora相关配置及测试

    1.Oracle RAC服务端/etc/hosts部分内容如下 2.查看服务端的local_listener和remote_listener参数 3.客户端tnsnames.ora配置参考 3.1 1 ...

  9. ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora)

    不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册.与单实例相同,RAC非缺省端口的监听器也是通过设置参数 ...

随机推荐

  1. ITFriend创业败局(三):技术人员创业,需要尽可能避免,或者需要解决的5个重要问题

    一.插科打诨: 本想给小雷粉,做一个创业"成功案例"的,结果做成了一个"反面教材"~ No zuo,no die~ 二.写作目的:分享自己作为一名技术人员,或者 ...

  2. Linux初接触设置笔记01

    没事装Linux尝试一下,来来回回装无数次,把刚开始需要设置的东西自己收藏一下,针对Centos7 装完Centos默认会覆盖windows引导,所以首先要做的是恢复windows的引导,如果不恢复, ...

  3. noip刷题记录 20170818

    天天爱跑步 lca + 树上差分 #include<iostream> #include<cstdio> #include<cstdlib> #include< ...

  4. java常用api2

    calendar calendar=calendar.getInstance(); StringBuilder和C#的用法一样 hashSet无序的,不可重复 LInkedHashSet有序的,不可重 ...

  5. 第三方微信支付,WAP、H5、APP、公众号支付的区别

    你说一个微信支付被腾讯搞了N个版本出来,是技术问题还收费原因不得而知.公众号支付,H5(wap)支付,APP支付.看得小编一头雾水. 带点N个疑问? 1.公众号支付是在公众号里支付,支众号里引入的三方 ...

  6. 数据库版本管理工具Flyway——基础篇

    Flyway 默认规约 SQL 脚本文件默认位置是项目的源文件夹下的db/migration 目录. Java 代码默认位于db.migration 包. SQL 脚本文件及Java 代码类名必须遵循 ...

  7. UWP 和 WPF 对比

    原文:UWP 和 WPF 对比 本文告诉大家 UWP 和 WPF 的不同. 如果在遇到技术选择或者想和小伙伴吹的时候可以让他以为自己很厉害,那么请继续看. 如果在看这文章还不知道什么是 UWP 和 W ...

  8. 常见数据结构与算法的 Python 实现

    1. 排序 快速排序(quick sort) 形式一:借助 partition 辅助函数 def partition(seq): pivot, seq = seq[0], seq[1:] low = ...

  9. Managing remote devices

    A method and apparatus for managing remote devices. In one embodiment of the present invention, ther ...

  10. solr+ Eclipse 4.3+ tomcat 7.5 +winds7(一)

    这种方法是我自己依据对tomcat运行项目流程和solr的运行流程来自己弄的,所以有点麻烦,请到原地址查看心血谢谢:http://blog.csdn.net/chunlei_zhang/article ...