升级步骤

  • Oracle 12.2.0.1升级至12.2.0.1.190115
1、阅读readme文件
2、检查更新opatch
3、备份程序
4、使用opatchauto工具进行数据库升级
5、打OJVM补丁

1、阅读readme文件

2、检查更新opatch

【12.1.0.2.0】版本是12.1.0.1.3 更新至12.2.0.1.13之上
【12.2.0.1.0】版本是12.2.0.1.6 更新至12.2.0.1.12之上
--更新opatch
https://updates.oracle.com/download/6880880.html Opatch下载地址
$ORACLE_HOME/OPatch/opatch version
$ORACLE_HOME/OPatch/opatch lspatches chmod -R 777 /oracle/soft/p6880880_122010_Linux-x86-64.zip --------------------------------oracle opatch
su - oracle
ls -ld $ORACLE_HOME/OPatch*
mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch`date +\%Y\%m\%d`bak && cd /oracle/soft && unzip p6880880_122010_Linux-x86-64.zip -d $ORACLE_HOME
$ORACLE_HOME/OPatch/opatch version RAC环境下无法在grid用户下直接执行,会报权限不足,需要root用户mv opatch
--------------------------------grid opatch
su - grid
ls -ld $ORACLE_HOME/OPatch*
cd $ORACLE_HOME/OPatch
pwd
su -
mv /oracle/app/12.2.0/grid/OPatch /oracle/app/12.2.0/grid/OPatch`date +\%Y\%m\%d`
unzip /oracle/soft/p6880880_122010_Linux-x86-64.zip -d /oracle/app/12.2.0/grid
chown -R grid:oinstall /oracle/app/12.2.0/grid/OPatch
su - grid
$ORACLE_HOME/OPatch/opatch version

3、备份程序

【备份软件】
su - root
mkdir -p /oracle/backup_soft
nohup tar -cvf /oracle/backup_soft/`date +\%Y\%m\%d`_oracle.tar /oracle/app/oracle >/oracle/backup_soft/`date +\%Y\%m\%d`_oracle.tar.log &
nohup tar -cvf /oracle/backup_soft/`date +\%Y\%m\%d`_12.2.0.tar /oracle/app/12.2.0 >/oracle/backup_soft/`date +\%Y\%m\%d`_12.2.0.tar.log &
nohup tar -cvf /oracle/backup_soft/`date +\%Y\%m\%d`_grid.tar /oracle/app/grid >/oracle/backup_soft/`date +\%Y\%m\%d`_grid.tar.log &
nohup tar -cvf /oracle/backup_soft/`date +\%Y\%m\%d`_oraInventory.tar /oracle/app/oraInventory >/oracle/backup_soft/`date +\%Y\%m\%d`_oraInventory.tar.log &
nohup tar -cvf /oracle/backup_soft/`date +\%Y\%m\%d`_etc.tar /etc >/oracle/backup_soft/`date +\%Y\%m\%d`_etc.tar.log &

4、使用opatchauto工具进行数据库升级

su – root
mkdir -p /oracle/soft/12c_patch
cd /oracle/soft/12c_patch
unzip /oracle/soft/p28980109_122010_Linux-x86-64.zip -d /oracle/soft/12c_patch
chmod -R 777 /oracle/soft/12c_patch 方法1:GI和DB分开打
【To patch only the GI home】
su - root
export UNZIPPED_PATCH_LOCATION=/oracle/soft/12c_patch/28980109
export GI_HOME=/oracle/app/12.2.0/grid
export PATH=$PATH:$GI_HOME/OPatch
opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 -oh $GI_HOME -analyze
opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 -oh $GI_HOME 【To patch only the DB home】
su - root
export UNZIPPED_PATCH_LOCATION=/oracle/soft/12c_patch/28980109
export ORACLE_HOME=/oracle/app/oracle/product/12.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/OPatch
opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 -oh $ORACLE_HOME -analyze
opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 -oh $ORACLE_HOME 方法2:GI+DB一起打
su - root
export UNZIPPED_PATCH_LOCATION=/oracle/soft/12c_patch/28980109
export GI_HOME=/oracle/app/12.2.0/grid
export PATH=$PATH:$GI_HOME/OPatch
opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 -analyze
opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 --12C补丁列表信息
$ORACLE_HOME/OPatch/opatch version
$ORACLE_HOME/OPatch/opatch lspatches
$ORACLE_HOME/OPatch/opatch lsinventory --检查数据字典中补丁信息
set lines 500 pages 500
col description for a80
col action_time for a35
col action for a10
col comments for a50
col VERSION for a20
col NAMESPACE for a20
col BUNDLE_SERIES for a20
select * from registry$history;
select patch_id,version,action,status,action_time,description from dba_registry_sqlpatch;

5、打OJVM补丁

【OJVM】
1、ojvm补丁检查
su - oracle
export PATCH_TOP_DIR=/oracle/soft/12c_patch/28980109
export PATH=$PATH:$ORACLE_HOME/OPatch
opatch prereq CheckConflictAgainstOHWithDetail -ph $PATCH_TOP_DIR/28790651 2、关闭所有服务(shut down all the services (database, ASM, listeners, nodeapps, and CRS daemons)
For an Oracle RAC environment, shut down all the services (database, ASM, listeners, nodeapps, and CRS daemons) running from the Oracle home on all the nodes you want to patch. su – root
/oracle/app/12.2.0/grid/bin/crsctl stop cluster -all -----停止所有节点集群服务 3、打OJVM补丁,所有节点都要打(OPatch is used on only one node at a time.)
su - oracle
export PATCH_TOP_DIR=/oracle/soft/12c_patch/28980109
export PATH=$PATH:$ORACLE_HOME/OPatch
cd $PATCH_TOP_DIR/28790651
$ORACLE_HOME/OPatch/opatch apply
$ORACLE_HOME/OPatch/opatch lspatches
$ORACLE_HOME/OPatch/opatch lsinventory 4、启服务 (After all nodes are patched, start all services. )
su – root
/oracle/app/12.2.0/grid/bin/crsctl start cluster -all -----启动所有节点集群服务 5、Loading Modified SQL Files Into the Database
1)Starting the Database for Post Installation Steps in an Oracle RAC Environment
On only one node, perform the following steps to start an Oracle RAC database in startup upgrade mode. sqlplus / as sysdba
SQL> startup 启动所有服务的时候数据库资源以及启动了
SQL> alter system set cluster_database=false scope=spfile; $ORACLE_HOME/bin/srvctl stop database -d ndscdb
sqlplus / as sysdba
SQL> startup upgrade 2)
cd $ORACLE_HOME/OPatch
./datapatch -verbose 过程见下面
sqlplus / as sysdba
SQL> shutdown immediate; 3)Restarting the Database after Running the Post Installation Steps in an Oracle RAC Environment To start the database back in normal mode sqlplus / as sysdba
SQL> startup
SQL> alter system set cluster_database=true scope=spfile;
SQL> shutdown immediate;
$ORACLE_HOME/bin/srvctl start database -d ndscdb 6、失效对象
cd $ORACLE_HOME/rdbms/admin
sqlplus / as sysdba
SQL> @utlrp.sql set lin 300 pages 5000
col object_name for a40
col owner for a20
select count(*) from dba_objects where status='INVALID';
select count(*) from dba_objects where status='INVALID' and owner='SYS';
select owner,object_name,object_type,status from dba_objects where status='INVALID'; 7、检查数据字典中补丁信息
set lines 500 pages 500
col description for a75
col action_time for a35
col action for a10
col comments for a50
col VERSION for a25
col NAMESPACE for a20
col BUNDLE_SERIES for a20
select * from registry$history;
select patch_id,version,action,status,action_time,description from dba_registry_sqlpatch;

附 升级补丁日志

--补丁安装日志
WWJD-DB1:/root #export UNZIPPED_PATCH_LOCATION=/oracle/soft/12c_patch/28980109
WWJD-DB1:/root #export GI_HOME=/oracle/app/12.2.0/grid
WWJD-DB1:/root #export PATH=$PATH:$GI_HOME/OPatch
WWJD-DB1:/root #opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 -oh $GI_HOME OPatchauto session is initiated at Mon Jan 28 13:53:33 2019 System initialization log file is /oracle/app/12.2.0/grid/cfgtoollogs/opatchautodb/systemconfig2019-01-28_01-53-36PM.log. Session log file is /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/opatchauto2019-01-28_01-53-48PM.log
The id for this session is D6KS Executing OPatch prereq operations to verify patch applicability on home /oracle/app/12.2.0/grid
Patch applicability verified successfully on home /oracle/app/12.2.0/grid Bringing down CRS service on home /oracle/app/12.2.0/grid
Prepatch operation log file location: /oracle/app/grid/crsdata/WWJD-db1/crsconfig/crspatch_WWJD-db1_2019-01-27_09-54-06PM.log
CRS service brought down successfully on home /oracle/app/12.2.0/grid Start applying binary patch on home /oracle/app/12.2.0/grid
Binary patch applied successfully on home /oracle/app/12.2.0/grid Starting CRS service on home /oracle/app/12.2.0/grid
Postpatch operation log file location: /oracle/app/grid/crsdata/WWJD-db1/crsconfig/crspatch_WWJD-db1_2019-01-27_09-58-04PM.log
CRS service started successfully on home /oracle/app/12.2.0/grid OPatchAuto successful. --------------------------------Summary-------------------------------- Patching is completed successfully. Please find the summary as follows: Host:WWJD-db1
CRS Home:/oracle/app/12.2.0/grid
Version:12.2.0.1.0
Summary: ==Following patches were SUCCESSFULLY applied: Patch: /oracle/soft/12c_patch/28980109/28828733/26839277
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_13-55-08PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28566910
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_13-55-08PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28822515
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_13-55-08PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28864846
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_13-55-08PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28870605
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_13-55-08PM_1.log OPatchauto session completed at Mon Jan 28 14:06:37 2019
Time taken to complete the session 13 minutes, 4 seconds
WWJD-DB1:/root # WWJD-DB1:/root #export UNZIPPED_PATCH_LOCATION=/oracle/soft/12c_patch/28980109
WWJD-DB1:/root #export ORACLE_HOME=/oracle/app/oracle/product/12.2.0/db_1
WWJD-DB1:/root #export PATH=$PATH:$ORACLE_HOME/OPatch
WWJD-DB1:/root #opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 -oh $ORACLE_HOME -analyze OPatchauto session is initiated at Mon Jan 28 14:13:12 2019 System initialization log file is /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchautodb/systemconfig2019-01-28_02-13-16PM.log. Session log file is /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/opatchauto2019-01-28_02-14-04PM.log
The id for this session is 1RQ4 Executing OPatch prereq operations to verify patch applicability on home /oracle/app/oracle/product/12.2.0/db_1
Patch applicability verified successfully on home /oracle/app/oracle/product/12.2.0/db_1 Verifying SQL patch applicability on home /oracle/app/oracle/product/12.2.0/db_1
SQL patch applicability verified successfully on home /oracle/app/oracle/product/12.2.0/db_1 OPatchAuto successful. --------------------------------Summary-------------------------------- Analysis for applying patches has completed successfully: Host:WWJD-db1
RAC Home:/oracle/app/oracle/product/12.2.0/db_1
Version:12.2.0.1.0 ==Following patches were SKIPPED: Patch: /oracle/soft/12c_patch/28980109/28828733/28864846
Reason: This patch is not applicable to this specified target type - "rac_database" Patch: /oracle/soft/12c_patch/28980109/28828733/26839277
Reason: This patch is not applicable to this specified target type - "rac_database" Patch: /oracle/soft/12c_patch/28980109/28828733/28566910
Reason: This patch is not applicable to this specified target type - "rac_database" ==Following patches were SUCCESSFULLY analyzed to be applied: Patch: /oracle/soft/12c_patch/28980109/28828733/28870605
Log: /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_14-14-14PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28822515
Log: /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_14-14-14PM_1.log OPatchauto session completed at Mon Jan 28 14:14:44 2019
Time taken to complete the session 1 minute, 32 seconds WWJD-DB1:/root #opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 -oh $ORACLE_HOME OPatchauto session is initiated at Mon Jan 28 14:15:18 2019 System initialization log file is /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchautodb/systemconfig2019-01-28_02-15-21PM.log. Session log file is /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/opatchauto2019-01-28_02-15-46PM.log
The id for this session is DJVQ Executing OPatch prereq operations to verify patch applicability on home /oracle/app/oracle/product/12.2.0/db_1
Patch applicability verified successfully on home /oracle/app/oracle/product/12.2.0/db_1 Verifying SQL patch applicability on home /oracle/app/oracle/product/12.2.0/db_1
SQL patch applicability verified successfully on home /oracle/app/oracle/product/12.2.0/db_1 Preparing to bring down database service on home /oracle/app/oracle/product/12.2.0/db_1
Successfully prepared home /oracle/app/oracle/product/12.2.0/db_1 to bring down database service Bringing down database service on home /oracle/app/oracle/product/12.2.0/db_1
Following database(s) and/or service(s) are stopped and will be restarted later during the session: ndscdb
Database service successfully brought down on home /oracle/app/oracle/product/12.2.0/db_1 Performing prepatch operation on home /oracle/app/oracle/product/12.2.0/db_1
Perpatch operation completed successfully on home /oracle/app/oracle/product/12.2.0/db_1 Start applying binary patch on home /oracle/app/oracle/product/12.2.0/db_1
Binary patch applied successfully on home /oracle/app/oracle/product/12.2.0/db_1 Performing postpatch operation on home /oracle/app/oracle/product/12.2.0/db_1
Postpatch operation completed successfully on home /oracle/app/oracle/product/12.2.0/db_1 Starting database service on home /oracle/app/oracle/product/12.2.0/db_1
Database service successfully started on home /oracle/app/oracle/product/12.2.0/db_1 Preparing home /oracle/app/oracle/product/12.2.0/db_1 after database service restarted
No step execution required......... Trying to apply SQL patch on home /oracle/app/oracle/product/12.2.0/db_1
SQL patch applied successfully on home /oracle/app/oracle/product/12.2.0/db_1 OPatchAuto successful. --------------------------------Summary-------------------------------- Patching is completed successfully. Please find the summary as follows: Host:WWJD-db1
RAC Home:/oracle/app/oracle/product/12.2.0/db_1
Version:12.2.0.1.0
Summary: ==Following patches were SKIPPED: Patch: /oracle/soft/12c_patch/28980109/28828733/28864846
Reason: This patch is not applicable to this specified target type - "rac_database" Patch: /oracle/soft/12c_patch/28980109/28828733/26839277
Reason: This patch is not applicable to this specified target type - "rac_database" Patch: /oracle/soft/12c_patch/28980109/28828733/28566910
Reason: This patch is not applicable to this specified target type - "rac_database" ==Following patches were SUCCESSFULLY applied: Patch: /oracle/soft/12c_patch/28980109/28828733/28822515
Log: /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_14-17-17PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28870605
Log: /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_14-17-17PM_1.log OPatchauto session completed at Mon Jan 28 14:20:23 2019
Time taken to complete the session 5 minutes, 6 seconds
WWJD-DB1:/root # 节点2 WWJD-DB2:/root #export UNZIPPED_PATCH_LOCATION=/oracle/soft/12c_patch/28980109
WWJD-DB2:/root #export GI_HOME=/oracle/app/12.2.0/grid
WWJD-DB2:/root #export PATH=$PATH:$GI_HOME/OPatch
WWJD-DB2:/root #opatchauto apply $UNZIPPED_PATCH_LOCATION/28828733 OPatchauto session is initiated at Mon Jan 28 16:21:56 2019 System initialization log file is /oracle/app/12.2.0/grid/cfgtoollogs/opatchautodb/systemconfig2019-01-28_04-21-59PM.log. Session log file is /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/opatchauto2019-01-28_04-22-27PM.log
The id for this session is SW7K Executing OPatch prereq operations to verify patch applicability on home /oracle/app/oracle/product/12.2.0/db_1
Executing OPatch prereq operations to verify patch applicability on home /oracle/app/12.2.0/grid Patch applicability verified successfully on home /oracle/app/oracle/product/12.2.0/db_1
Patch applicability verified successfully on home /oracle/app/12.2.0/grid Verifying SQL patch applicability on home /oracle/app/oracle/product/12.2.0/db_1
SQL patch applicability verified successfully on home /oracle/app/oracle/product/12.2.0/db_1 Preparing to bring down database service on home /oracle/app/oracle/product/12.2.0/db_1
Successfully prepared home /oracle/app/oracle/product/12.2.0/db_1 to bring down database service Bringing down CRS service on home /oracle/app/12.2.0/grid
Prepatch operation log file location: /oracle/app/grid/crsdata/WWJD-db2/crsconfig/crspatch_WWJD-db2_2019-01-28_00-23-06AM.log
CRS service brought down successfully on home /oracle/app/12.2.0/grid Performing prepatch operation on home /oracle/app/oracle/product/12.2.0/db_1
Perpatch operation completed successfully on home /oracle/app/oracle/product/12.2.0/db_1 Start applying binary patch on home /oracle/app/oracle/product/12.2.0/db_1
Binary patch applied successfully on home /oracle/app/oracle/product/12.2.0/db_1 Performing postpatch operation on home /oracle/app/oracle/product/12.2.0/db_1
Postpatch operation completed successfully on home /oracle/app/oracle/product/12.2.0/db_1 Start applying binary patch on home /oracle/app/12.2.0/grid
Binary patch applied successfully on home /oracle/app/12.2.0/grid Starting CRS service on home /oracle/app/12.2.0/grid
Postpatch operation log file location: /oracle/app/grid/crsdata/WWJD-db2/crsconfig/crspatch_WWJD-db2_2019-01-28_00-35-56AM.log
CRS service started successfully on home /oracle/app/12.2.0/grid Preparing home /oracle/app/oracle/product/12.2.0/db_1 after database service restarted
No step execution required......... Trying to apply SQL patch on home /oracle/app/oracle/product/12.2.0/db_1
SQL patch applied successfully on home /oracle/app/oracle/product/12.2.0/db_1 OPatchAuto successful. --------------------------------Summary-------------------------------- Patching is completed successfully. Please find the summary as follows: Host:WWJD-db2
RAC Home:/oracle/app/oracle/product/12.2.0/db_1
Version:12.2.0.1.0
Summary: ==Following patches were SKIPPED: Patch: /oracle/soft/12c_patch/28980109/28828733/28864846
Reason: This patch is not applicable to this specified target type - "rac_database" Patch: /oracle/soft/12c_patch/28980109/28828733/26839277
Reason: This patch is not applicable to this specified target type - "rac_database" Patch: /oracle/soft/12c_patch/28980109/28828733/28566910
Reason: This patch is not applicable to this specified target type - "rac_database" ==Following patches were SUCCESSFULLY applied: Patch: /oracle/soft/12c_patch/28980109/28828733/28822515
Log: /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_16-31-15PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28870605
Log: /oracle/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_16-31-15PM_1.log Host:WWJD-db2
CRS Home:/oracle/app/12.2.0/grid
Version:12.2.0.1.0
Summary: ==Following patches were SUCCESSFULLY applied: Patch: /oracle/soft/12c_patch/28980109/28828733/26839277
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_16-32-45PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28566910
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_16-32-45PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28822515
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_16-32-45PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28864846
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_16-32-45PM_1.log Patch: /oracle/soft/12c_patch/28980109/28828733/28870605
Log: /oracle/app/12.2.0/grid/cfgtoollogs/opatchauto/core/opatch/opatch2019-01-28_16-32-45PM_1.log OPatchauto session completed at Mon Jan 28 16:42:00 2019
Time taken to complete the session 20 minutes, 4 seconds
WWJD-DB2:/root #

Oracle 12C 补丁升级的更多相关文章

  1. 探索Oracle之数据库升级八 12c Downgrade 11gR2

    探索Oracle之数据库升级八 12c Downgrade 11gR2 前言: 我们前面已经完毕了11gR2 upgrade to 12c 的升级,整个过程还是比較顺利的,尽管和曾经版本号升级有些不太 ...

  2. oracle补丁升级

    PSU的全称是Patch Set Update,Oracle对于其产品每个季度发行一次的补丁包,包含了bug的修复.Oracle选取被用户下载数量多,且被验证过具有较低风险的补丁放入到每个季度的PSU ...

  3. 探索Oracle之数据库升级七 11gR2 to 12c 升级完毕后插入PDB

    探索Oracle之数据库升级七 11gR2 to 12c 升级完毕后插入PDB 前言:        从Oracle 12c開始,引入了容器数据库的概念,能够实现数据库插拔操作,例如以下图: 如今我们 ...

  4. 本地Oracle客户端11g升级12c导致PowerCenter无法连接ODBC数据源

    问题: 本地Oracle客户端由11g-32bit升级为12c-64bit时,在PowerCenter Designer使用原来的ODBC连接导入数据库表时,发生如下错误: 原因: 原oracle11 ...

  5. 【转】:Oracle Linux6.9下安装Oracle 11.2.0.4.0及psu补丁升级

    为方便截图,本文操作都在vmware虚拟机上完成. 目录: 1.操作系统安装 2.数据库安装 3.PSU补丁升级卸载   part1 操作系统安装 Oracle (Enterprise) Linux ...

  6. Oracle 12c新特性

    转载自:Oracle 12c新特性(For DBA) 一: Multitenant Architecture (12.1.0.1)      多租户架构是Oracle 12c(12.1)的新增重磅特性 ...

  7. Oracle 12c新特性(For DBA)

    一: Multitenant Architecture (12.1.0.1)      多租户架构是Oracle 12c(12.1)的新增重磅特性,内建的多分租(Multi-tenancy),一个容器 ...

  8. OCP培训 Oracle 12c/18c/19c OCP认证实战培训【送OCP优惠名额】

    一.OCP培训 Oracle 12c/18c/19c OCP认证全套实战培训[送OCP优惠名额],本课程内容 课程目标: 为满足想参加Oracle OCP考证的学员,风哥设计的一套比较全面OCP实战培 ...

  9. linux下通过脚本方式对中间件weblogic进行补丁升级

    转至:http://bbs.learnfuture.com/topic/48 linux下通过脚本方式对中间件weblogic进行补丁升级 刘五奎 [摘要] 在运维行业,系统或软件漏洞每每牵动着每一个 ...

随机推荐

  1. Codeforces 840C. On the Bench 动态规划 排列组合

    原文链接https://www.cnblogs.com/zhouzhendong/p/CF840C.html 题解 首先,我们可以发现,如果把每一个数的平方因子都除掉,那么剩下的数,不相等的数都可以相 ...

  2. webpack打包样式代码去重

    一.问题描述 控制台审查样式,同一个样式被导入很多遍,每调用一次@import "common.less";打包时都会多出一份类似的样式代码. 二.问题分析 补上... 三.解决方 ...

  3. vscode断点调试工程化服务端文件

    一.创建express应用我们使用express-generator创建一个新的express应用.1.全局安装express-generator // 安装 sudo npm install exp ...

  4. Sublime编译器快捷键大全

    Ctrl+Shift+P:打开命令面板 Ctrl+P:搜索项目中的文件 Ctrl+G:跳转到第几行 Ctrl+W:关闭当前打开文件 Ctrl+Shift+W:关闭所有打开文件 Ctrl+Shift+V ...

  5. 4.2模拟赛 wormhole(期望DP Dijkstra)

    \(\color{white}{orzmjt又切题了...}\) \(Description\) 给定一张有向图,每条边在每一时刻有\(p_i\)的概率存在.求最优策略下从\(1\)走到\(n\)最少 ...

  6. selenium基础实例学习

    在这里我们通过selenium官方文档做给的实例以及翻译,做出如果代码注释   from selenium import webdriverfrom selenium.webdriver.common ...

  7. Jupyter notbook& REVEAL.JS& nbconvert 使用jupyter notebook制作slides

    使用Jupyter notebook作为slide主要有两个方面: 在运行notebook 的时候可以幻灯片播放 这样幻灯片就有了notebook可交互的功能,而notebook就有了幻灯片全屏容易分 ...

  8. typedef 摘自百度百科

    1.typedef的最简单使用 1 typedef long byte_4; 给已知数据类型long起个新名字,叫byte_4. 2. typedef与结构结合使用 1 2 3 4 5 6 7 8 9 ...

  9. Array,prototype.concat.apply与[].conat.apply.

    一直都知道JS数组Array内置对象有一个concat方法,但是也没怎么研究过,今天偶然就看了看 concat是连接一个或多个数组 返回的是连接后数组的一个副本 var oldArr=[]; var ...

  10. table表格设置边框线为单实线

    设置table表格边框为单实线的方法有两种 第一种方法就是利用table标签cellspacing=0属性来实现,cellspacing是内边框和外边框的距离,这种方法实现的看起来是单实线,其实是内边 ...