热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Oracle12C补丁升级

升级步骤Oracle12.2.0.1升级至12.2.0.1.1901151、阅读readme文件2、检查更新opatch3、备份程序4、使用opatchauto工具进行数

升级步骤

  • 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 #

推荐阅读
  • PatchODAX8: ... [详细]
  • OpenCV4.5.0+contrib编译流程及解决错误方法
    本文介绍了OpenCV4.5.0+contrib的编译流程,并提供了解决常见错误的方法,包括下载失败和路径修改等。同时提供了相关参考链接。 ... [详细]
  • 本文介绍了Oracle存储过程的基本语法和写法示例,同时还介绍了已命名的系统异常的产生原因。 ... [详细]
  • 1.官网下载了mysql-5.7.17-win64.zip包,配置遇到很多麻烦,记录一下;2.解压后放到指定的文件夹,修改mysql-5.7.17的配置文件my-default.i ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文是一位90后程序员分享的职业发展经验,从年薪3w到30w的薪资增长过程。文章回顾了自己的青春时光,包括与朋友一起玩DOTA的回忆,并附上了一段纪念DOTA青春的视频链接。作者还提到了一些与程序员相关的名词和团队,如Pis、蛛丝马迹、B神、LGD、EHOME等。通过分享自己的经验,作者希望能够给其他程序员提供一些职业发展的思路和启示。 ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • Redis底层数据结构之压缩列表的介绍及实现原理
    本文介绍了Redis底层数据结构之压缩列表的概念、实现原理以及使用场景。压缩列表是Redis为了节约内存而开发的一种顺序数据结构,由特殊编码的连续内存块组成。文章详细解释了压缩列表的构成和各个属性的含义,以及如何通过指针来计算表尾节点的地址。压缩列表适用于列表键和哈希键中只包含少量小整数值和短字符串的情况。通过使用压缩列表,可以有效减少内存占用,提升Redis的性能。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 2018深入java目标计划及学习内容
    本文介绍了作者在2018年的深入java目标计划,包括学习计划和工作中要用到的内容。作者计划学习的内容包括kafka、zookeeper、hbase、hdoop、spark、elasticsearch、solr、spring cloud、mysql、mybatis等。其中,作者对jvm的学习有一定了解,并计划通读《jvm》一书。此外,作者还提到了《HotSpot实战》和《高性能MySQL》等书籍。 ... [详细]
  • Python已成为全球最受欢迎的编程语言之一,然而Python程序的安全运行存在一定的风险。本文介绍了Python程序安全运行需要满足的三个条件,即系统路径上的每个条目都处于安全的位置、"主脚本"所在的目录始终位于系统路径中、若python命令使用-c和-m选项,调用程序的目录也必须是安全的。同时,文章还提出了一些预防措施,如避免将下载文件夹作为当前工作目录、使用pip所在路径而不是直接使用python命令等。对于初学Python的读者来说,这些内容将有所帮助。 ... [详细]
  • 本文介绍了在无法联网的情况下,通过下载rpm包离线安装zip和unzip的方法。详细介绍了如何搜索并下载合适的rpm包,以及如何使用rpm命令进行安装。 ... [详细]
author-avatar
手浪用户2602925023
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有