--RMAN

--某个时间段备份失败的记录
SELECT * FROM V$RMAN_STATUS
 WHERE START_TIME >= TO_DATE(&START_TIME, 'YYYY-MM-DD HH24:MI:SS')
   AND END_TIME <= TO_DATE(&END_TIME, 'YYYY-MM-DD HH24:MI:SS')
   AND OPERATION = 'BACKUP'
   AND STATUS != 'COMPLETED'
   AND STATUS NOT LIKE 'RUNNING%';

--查询坏块(11g开始)
--先执行
run {
    allocate channel c1 device type disk;
    allocate channel c2 device type disk;
    allocate channel c3 device type disk;
    allocate channel c4 device type disk;
    allocate channel c5 device type disk;
    validate database;
}
--再执行
select * from v$database_block_corruption;

--RMAN-COMMAND

1.进入rman
2.rman基础命令
3.rman基本备份命令
4.rman其他命令
5.rman实战
6.rman恢复

--1.进入rman
--(1)进入本地数据库
rman target /
--(2)进入远程数据库
rman target hk/hk@hking
--(3)使用日志功能
rman target / msglog /data/backup/logs/full_dbbackup_`date +%y%m%d`.log

--2.rman基础命令
--(1)启动关闭数据库
RMAN> shutdown immediate
RMAN> startup

--(2)执行操作系统命令
RMAN> host

--(3)执行SQL语句
RMAN> SQL 'ALTER SYSTEM SWITCH LOGFILE';
--需要注意的一点是,rman中的sql环境不能执行SELECT语句,就算执行不报错,也不出结果

--(4)查看默认RMAN配置
RMAN>show all;
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default                            --设置的保留策略冗余度为1
CONFIGURE BACKUP OPTIMIZATION OFF; # default                                     --备份优化为off
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default                                 --默认的配置通道为磁盘,如果是sbt就为磁带设备
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default                                  --默认配置controlfile不自动备份
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default  --controlfile自动备份的位置
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default     --备份类型为backupset,备份类型的并行度为1
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default            --数据文件备份的拷贝为1
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default          --归档日志文件备份的拷贝为1
CONFIGURE MAXSETSIZE TO UNLIMITED; # default                                     --备份集大小不设上限
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default                                 --数据库加密技术为off
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default                               --数据库加密算法'AES128'
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default                          --归档日志的删除策略为NONE
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/data/ora11g/product/11.2.0/db_1/dbs/snapcf_zsddb.f'; # default  --controlfile的快照命名为'/data/ora11g/product/11.2.0/db_1/dbs/snapcf_zsddb.f'

--(5)修改默认RMAN参数设置
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/data/backup/rman/con_%F';
--Or
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/back/ctl_%F';

--3.rman基本备份命令     
--(1)对数据库进行备份
--备份数据库
RMAN>BACKUP DATABASE;
--注意:也可以指定备份的位置:
RMAN> BACKUP DATABASE FORMAT '/data/backup/rman/bak_%U';
--list命令查看刚刚创建的备份信息:
RMAN>list backup of database;

--(2)对表空间进行备份
--备份表空间
RMAN>backup tablespace HKING;
--通过LIST BACKUP 查看一下备份
RMAN>list backup of TABLESPACE HKING;
       
--(3)备份指定数据文件
--查看对应的数据文件及其序号
select file_name,file_id,tablespace_name from dba_data_files;
--再通过BACKUP DATAFILE备份指定序号的数据文件
RMAN> BACKUP DATAFILE n;
--通过list backup查看备份
RMAN> LIST BACKUP OF DATAFILE n;
  
--(4)备份控制文件
--第一种,做任何备份的时候,自动备份控制文件
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
--第二种,手动执行控制文件备份
RMAN> BACKUP CURRENT CONTROLFILE;
--第三种,执行BACKUP时指定INCLUDE CURRENT CONTROLFILE参数
RMAN> BACKUP DATABASE INCLUDE CURRENT CONTROLFILE;
--查看备份的控制文件
RMAN> LIST BACKUP OF CONTROLFILE;
--使用alter database backup controlfile备份控制文件
SQL> alter database backup controlfile to trace;
--Or
--SQL> alter database backup controlfile to trace as '/data/controlfile1.cof';
--(这样可以查看controlfile的构成)

--(5)备份归档日志文件
--利用BACKUP ARCHIVELOG命令备份
RMAN> BACKUP ARCHIVELOG ALL;
--BACKUP过程中利用PLUS ARCHIVELOG参数备份
RMAN> BACKUP DATABASE PLUS ARCHIVELOG;
--备份安全流程(推荐)   
--1>.运行ALTER SYSTEM ARCHIVE LOG CURRENT语句对当前redolog进行归档
--2>.执行BACKUP ARCHIVELOG ALL命令备份所有已归档日志
--3>.执行BACKUP命令对指定项进行备份
--4>.再次运行ALTER SYSTEM ARCHIVE LOG CURRENT对当前redolog归档
--5>.对新生成的尚未备份的归档文件进行备份
run{
allocalte channel ch1 type disk;
sql ‘alter system archive log current’;
backup as compressed backupset database format ‘/u02/rman/testdb_%T_%U’;
sql ‘alter system archive log current’;
backup as compressed backupset archivelog all format ‘/u02/rman/testarc_%T_%U’;
backup current controlfile format ‘/u02/rman/testcon_%T_%U’;
release channel ch1;
}
--查看已备份的归档日志片段
RMAN> LIST BACKUP OF ARCHIVELOG ALL;

--4.rman其他命令
--删除命令
--删除过期备份(RMAN会根据冗余策略确定备份是否过期)
RMAN> delete obsolete;
--删除无效备份(通过CROSSCHECK命令核对备份集,如果发现备份无效,rman会将该备份集标记为EXPIRED状态)
RMAN> delete expired backup;
--删除特定备份集(通过list backup选择你所要删除的备份集)
RMAN> delete backupset 12;
--删除特定备份片
RMAN> delete backuppiece '/data/backup/zsd_bk.bak';
--删除所有备份集
RMAN> delete backup;
--删除归档目录中已备份的归档日志
RMAN> backup archivelog all delete input;
RMAN> backup as compressed backupset archivelog all filesperset 6 format '/back/arch_%U_%d_%T' delete input;

--report命令
--主要是用于当前备份信息的分析,如哪些备份已经过期,哪些文件该备份,哪些备份不可用,哪些备份可以删除
--查看过期备份
RMAN>report obsolete;
        
--crosscheck命令
--用来检查备份或归档物理文件的状态,如果物理文件存在,并且控制文件(或恢复目录)中有匹配记录,则标记该对象的状态为available(有效), 如果文件已经不存在,则标记该对象为expired(无效)
--检查所有归档文件
RMAN>crosscheck archivelog all; 
--检查所有备份集:
RMAN>crosscheck backup;
    
--rman validate命令
--RMAN能够检测物理和逻辑错误。validate命令帮助保证备份文件存在于合适的位置,可读取,并且没有逻辑及物理错误
--测试任一特定备份集
RMAN>validate backupset 9;
--测试整个数据库和归档日志备份集
RMAN>backup validate database archivelog all;
--提示:
--监控和验证RMAN作业
--V$RMAN_STATUS视图显示所有完成作业的状态以及命令
select operation,status,start_time,end_time from v$rman_status;
--V$SESSION_LOGGOPS视图上查询估计备份的进度
set line 333
col OPNAME for a30
select opname,to_char(start_time,'DD-MON-YY HH24:MI') "Start of backup",Sofar,totalwork,elapsed_seconds/60 "ELAPSED TIME IN MINUTES",ROUND(sofar/totalwork*100,2) "Percentage Completed" from v$session_longops;

--rman下对数据文件重命名
run{
sql 'alter tablespace hking offline';
set newname for datafile '/u01/app/oracle/oradata/hking.dbf' to '/u01/app/oracle/oradata/hking01.dbf';
restore tablespace hking;
switch datafile all;
recover tablespace hking;
sql 'alter tablespace hking online';
}

--rman下对数据文件移动
run{
sql 'alter tablespace hking offline';
set newname for datafile '/u01/app/oracle/oradata/hking01.dbf' to '/u01/app/oracle/oradata/dbtest/hking01.dbf';
restore tablespace hking;
switch datafile all;
recover tablespace hking;
sql 'alter tablespace hking online';
}

--5.rman实战
--以下是一个实战的rman备份脚本
BACKUP AS COMPRESSED BACKUPSET   
SKIP INACCESSIBLE FILESPERSET 10 DATABASE PLUS ARCHIVELOG FILESPERSET 20
DELETE ALL INPUT;
--其中 COMPRESSED:       --表示压缩的备份
       SKIP INACCESSIBLE:--表示跳过不可读的文件。我们知道一些offline的数据文件只要存在于磁盘上就仍然可被读取,但是可能有些文件已经被删除或移到它处造成不可读,加上这个参数就会跳过这些文件;
       FILESPERSET 10:    --表示一个备份集中有多少个文件,这个就是一个备份集有10个文件

--备份参考样例
run
{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
allocate channel c5 type disk;
crosscheck backup;
crosscheck archivelog all;
backup full database filesperset 5  format '/nfs/NCICASH/backup/full_%u_%d_%T';
sql 'alter system archive log current';
backup  archivelog all format  '/nfs/NCICASH/backup/arch_%u_%d_%T' ;
backup current controlfile format  '/nfs/NCICASH/backup/ctl_%u_%d_%T';
release channel c1;
release channel c2;
release channel c3;
release channel c4;
release channel c5;
}

--rman恢复:
--明确两个概念:数据库修复(Restore)和数据库恢复(Recover)
--restore:是指利用备份集的数据文件来替换已经损坏的数据库文件或者将其恢复到一个新的位置
--recover:是指应用所有重做日志,将数据库恢复到崩溃前的状态,或者应用部分redo,将数据库恢复到指定的时间点.(前提是:所有重做日志文件都在,包括在线和归档的)
--restore 命令:用于还原已经备份的数据文件
  (1)、restore database     --还原所有的数据文件。
  (2)、restore tablespace   --还原特定表空间的数据文件。
  (3)、restore datafile     --还原特定的数据文件。
  (4)、restore controlfile  --还原控制文件。
  (5)、restore archivelog   --还原归档日志文件。
--recover 命令:当数据库需要应用归档日志文件恢复数据文件时,使用recover命令。使用该命令数据库系统会自动应用归档的日志文件
  (1)、recover database     --恢复所有的数据文件。
  (2)、recover tablespace   --恢复特定表空间的数据文件。
  (3)、recover datafile     --恢复特定的数据文件。

--Restore&Recover
--1.目标库恢复控制文件
rman target /
run {
allocate channel ch1 type disk;
restore controlfile from ' /nfs/NCICASH/backup/ctl_das1i6ah_NCICASH_20170413';
sql 'alter database mount';
release channel ch1;
}

--2.从源端上拷贝密码文件到目标端2个节点(注意改名)
--修改目标库redo文件路径,此时控制文件记录的路径是错误的
--查询当前控制文件redo路径
select member from v$logfile;
--修改目标库redo文件路径
alter database rename file '+ATS_DATAFILE/ncicash/onlinelog/group_30.433.824588383'  to '+dgdata/NCICASH/onlinelog/group_30.433.824588383';
alter database rename file '+ATS_ARCHIVE/ncicash/onlinelog/group_30.1709.824588389'  to '+dgdata/NCICASH/onlinelog/group_30.1709.824588389';
......
alter database rename file '+ATS_ARCHIVE/ncicash/onlinelog/group_8.3386.928788171'   to '+dgdata/NCICASH/onlinelog/group_8.3386.928788171';

--3.在目标端服务器上恢复数据库数据文件
--目标端执行
--更改控制文件中数据库文件的路径
--Restore脚本
vi rmanrestore.sh

#!/bin/bash
. /home/oracle/.profile
export ORACLE_SID=zjquery1
echo "******Begin Restore*****";
date
rman target / <<EOF  
run {
allocate channel ch1 type disk;
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
allocate channel ch5 type disk;
set newname for datafile '+ATS_DATAFILE/ncicash/datafile/system.259.749440021'  to '+dgdata/NCICASH/datafile/system.259.749440021';
set newname for datafile '+ATS_DATAFILE/ncicash/datafile/sysaux.260.749440027'  to '+dgdata/NCICASH/datafile/sysaux.260.749440027';
set newname for datafile '+ATS_DATAFILE/ncicash/datafile/undotbs1.261.749440031'  to '+dgdata/NCICASH/datafile/undotbs1.261.749440031';
set newname for datafile '+ATS_DATAFILE/ncicash/datafile/undotbs2.263.749440049'  to '+dgdata/NCICASH/datafile/undotbs2.263.749440049';
set newname for datafile '+ATS_DATAFILE/ncicash/datafile/users.264.749440049'  to '+dgdata/NCICASH/datafile/users.264.749440049';
set newname for datafile '+ATS_DATAFILE/ats002_1.dbf'  to '+dgdata/NCICASH/datafile/ats002_1.dbf';
.......
set newname for datafile '+ATS_DATAFILE/bizsystem_01.dbf'  to '+dgdata/NCICASH/datafile/bizsystem_01.dbf';
set newname for datafile '+ATS_INDEX/atsindexes_1.dbf'  to '+dgdata/NCICASH/datafile/atsindexes_1.dbf';
.......
set newname for datafile '+ATS_DATAFILE/ats002_21.dbf'  to '+dgdata/NCICASH/datafile/ats002_21.dbf';
.......
set newname for tempfile '+ATS_DATAFILE/atstemp.dbf'  to '+dgdata/NCICASH/datafile/atstemp.dbf';
set newname for tempfile '+ATS_DATAFILE/biztemp.dbf'  to '+dgdata/NCICASH/datafile/biztemp.dbf';
set newname for tempfile '+ATS_DATAFILE/temp02.dbf'  to '+dgdata/NCICASH/datafile/temp02.dbf';
set newname for tempfile '+ATS_DATAFILE/bmcdata_tmp.dbf'  to '+dgdata/NCICASH/datafile/bmcdata_tmp.dbf';
restore database;
switch datafile all;
switch tempfile all;
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
}
exit;
EOF
echo "******End Restore******";date

--运行脚本:
nohup sh /home/oracle/scripts/rmanrestore.sh >/home/oracle/scripts/rmanrestore.log &

--4.目标库追归档
--备份源端新生成的归档
run
{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
allocate channel c5 type disk;
crosscheck archivelog all;
sql 'alter system archive log current';
backup  archivelog all format  '/nfs/NCICASH/backup/arch_%u_%d_%T' ;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
release channel c5;
}

--如果源端的归档也在nfs上,就不需要进行归档备份了
--目标库直接注册归档路径进行恢复
catalog start with '/nfs/NCICASH/archive';

--目标端恢复:
rman target /
run {
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
recover database;
release channel c1;
release channel c2;
release channel c3;
}

--1.对数据库进行完全介质恢复
--(1)启动数据库到加载状态:
RMAN> SHUTDOWN IMMEDIATE;
RMAN> STARTUP MOUNT;
--(2)执行恢复操作
RMAN> RESTORE DATABASE;
RMAN> RECOVER DATABASE DELETE ARCHIVELOGS SKIP TABLESPACE TEMP;
--注意:DELETE ARCHIVELOGS和SKIP TABLESPACE两个参数是可选择的,作用如下:
--DELETE ARCHIVELOGS:表示RMAN将在完成恢复过程后自动删除那些在恢复过程中修复的归档日志文件。
--SKIP TABLESPACE:跳过指定表空间,比如临时表,当然临时表空间即使你不跳过它也不会恢复的。
--(3)打开数据库
RMAN> ALTER DATABASE OPEN;

--2.恢复表空间
--(1)启动数据库到加载状态
RMAN> SHUTDOWN IMMEDIATE;
RMAN> STARTUP MOUNT;
--(2)进行恢复操作
RMAN> SQL 'ALTER TABLESPACE HDMEMBER OFFLINE IMMEDIATE';
RMAN> RESTORE TABLESPACE HDMEMBER;
RMAN> RECOVER TABLESPACE HDMEMBER;
RMAN> SQL 'ALTER TABLESPACE HDMEMBER ONLINE';
--(3)打开数据库
RMAN> ALTER DATABASE OPEN;

--3.恢复数据文件
--(1)启动数据库到加载状态
RMAN> SHUTDOWN IMMEDIATE;
RMAN> STARTUP MOUNT;
--(2)进行恢复操作
RMAN>SQL 'ALTER DATABASE DATAFILE 5 OFFLINE';
RMAN> RESTORE DATAFILE 5;
RMAN> RECOVER DATAFILE 5;
RMAN>SQL 'ALTER DATABASE DATAFILE 5 ONLINE';
--(3)打开数据库
RMAN> ALTER DATABASE OPEN;
--提示:查询对应的数据文件,表空间和数据文件序号:
--附个SQL:用来查询数据文件,临时文件与表空间对应及数据文件序号:
set linesize 333;
col FILE_NAME for a35
select ts.tablespace_name, df.file_name, df.file_id, tf.file_name
from dba_tablespaces ts, dba_data_files df, dba_temp_files tf
where ts.tablespace_name = df.tablespace_name(+)
and ts.tablespace_name = tf.tablespace_name(+);

--示例:归档模式下,假设某数据文件丢失,恢复该数据文件
--1.造假数据
sqlplus /nolog
conn member/member
create table zsd(name varchar2(50));
insert into zsd values ('test1');
insert into zsd values ('test2');
insert into zsd values ('test3');
--2.关闭,删除文件,启动数据库
SQL> conn / as sysdba    
SQL> shutdown immediate;
SQL> host 
[oracle@oracle-n1 ~]$ rm -rf /data/ora11g/oradata/zsddb/hdmember01.dbf
SQL> startup
SQL> archive log list;
--3.查看一下示例,并恢复数据库
select instance_name,status from v$instance;
set oracle_sid=zsddb
rman target /
RMAN> restore datafile '/data/ora11g/oradata/zsddb/hdmember01.dbf';
RMAN> recover datafile '/data/ora11g/oradata/zsddb/hdmember01.dbf';
RMAN> alter database open;

--示例:丢失控制文件的恢复
SQL> shutdown immediate;
[oracle@oracle-n1 ~]$ rm -rf /data/ora11g/oradata/zsddb/control*
--进入rman
rman target /
--随意指定一个DBID
RMAN> set dbid 3391142503;
RMAN> restore controlfile from '/data/ora11g/product/11.2.0/db_1/dbs/con_c-1552557445-20130520-06';   
RMAN> sql 'alter database mount';
RMAN> restore database;
RMAN> recover database;
RMAN> sql 'alter database open resetlogs';
--(还必须重建临时表空间)

Oracle RMAN相关推荐

  1. oracle rman异机恢复

      Oracle源主机 Oracle目标主机 主机平台 CentOS6.2(final) CentOs6.2(FInal) 主机名 vick rman IP地址 192.168.1.11 192.16 ...

  2. oracle rman备份时间,Oracle使用RMAN进行备份详述

    备份理论和基本语法 备份概念 执行备份或还原的数据库称为目标.在一些环境下,有许多数据库,因此有许多RMAN目标.应一次连接每个数据库.目标的每个备份都有一些属性: 打开或关闭 完整或部分 完整或增量 ...

  3. Oracle RMAN Recover中使用BBED 跳过缺失的归档 继续 Recover 的测试

    一.背景说明 Oracle RMAN 备份的恢复分2个步骤:RESTRE 和 RECOVER. 在这个过程中,Recover 是依赖与归档文件的. 假设一种情况:周一对数据库做了全备,然后保留归档.周 ...

  4. Oracle RMAN备份与还原 - 联机备份讲解

    Oracle RMAN备份与还原 - 联机备份讲解 脱机备份之后,对于RMAN备份有了初步的了解,相对于传统的用户手动管理备份文件,RMAN备份操作起来相对要简单方便的多,但是联机备份相对脱机备份操作 ...

  5. Oracle RMAN备份与还原 - 脱机备份讲解

    Oracle RMAN备份与还原 - 脱机备份讲解 RMAN在数据库服务器的帮助下实现数据库文件.控制文件.数据库文件与控制文件的映像副本.归档日志文件.数据库服务器参数文件的备份. RMAN的特点: ...

  6. Oracle RMAN 学习

    Oracle RMAN 学习:三思笔记 1 进入rman Rman--物理备份(结构/数据) 1 本地db Cmd set oracle_sid=orcl 1 rman target / Rman&g ...

  7. 明晚8点直播丨 Oracle RMAN 单实例异机迁移恢复(版本:11gR2)

    Oracle RMAN 单实例异机迁移恢复(版本:11GR2)-9月29日20:00 迁移数据库的方法有多种,较为常用的则是使用RMAN.使用RMAN迁移数据库属于数据库的物理备份与恢复范畴,整个过程 ...

  8. 29日直播丨 Oracle RMAN 单实例异机迁移恢复(版本:11GR2)

    Oracle RMAN 单实例异机迁移恢复(版本:11GR2)-9月29日20:00 迁移数据库的方法有多种,较为常用的则是使用RMAN.使用RMAN迁移数据库属于数据库的物理备份与恢复范畴,整个过程 ...

  9. oracle 带库,ORACLE RMAN下针对带库装置的操作

    ORACLE RMAN下针对带库设备的操作 带库或VTL作为关键业务的备份,虽在普通用户接触较少,但总体使用量还是比较大. 很多实例在做专业备份软件的同时会采用disk方式在本地或共享地址上再备一次, ...

  10. oracle rman备份 归档模式,Oracle RMAN备份归档与非归档模式

    #非归档模式备份数据库: #设置非归档模式 SQL>shutdown immediate SQL>startup mount SQL>alter database noarchive ...

最新文章

  1. Python要了解哪些编程基础 如何学Python比较好
  2. linux xia 安装程序,linux更新或安装libzip
  3. OpenCASCADE绘制测试线束:图形命令之AIS 查看器——查看命令
  4. 洛谷 P1308/暂无题解
  5. spring vaadin_在Spring Boot中使用Vaadin的简介
  6. 关于ORACLE 语句中,IN 超过1000个的解决方法
  7. Warning: Missing charsets in String to FontSet conversion
  8. C语言课后习题(39)
  9. 吴恩达机器学习 12.异常检测
  10. 多元统计分析朱建平pdf_应用多元统计分析课后答案朱建平版[精心整理].doc
  11. 数据分析中数据概览神器pandas_profiling介绍
  12. 昵图网源码php,【PHP】仿我图,千图,昵图网素材下载,素材销售平台最新宽屏商业版:含新版vip会员中心,全开源...
  13. python与vfp做桌面数据库_Python:如何提高将数据从vfp(dbf)加载到oracle的效率?...
  14. KNN算法和kd树详解(例子+图示)
  15. php处理excel里面的重复数据,Excel导入时,跳过重复数据,并提示重复数据数量与明细...
  16. Linux系统中常用的shell命令(文件目录操作)
  17. 计算机打不开excel表格,excel表格打不开怎么办?excel表格打不开的原因及解决方法...
  18. 详细讲解go web框架之gin框架源码解析记录及思路流程和理解
  19. java转义字符 \\
  20. Detected memory leaks!内存泄漏,溢出,内存越界问题分析

热门文章

  1. 对文件夹下面的图片进行重命名
  2. sparkgraph
  3. 【Python】实训7:航空公司客户价值分析(K-means聚类)
  4. 光学理论学习之光的偏振
  5. Hexo+Github博客:执行 hexo d 时,提示连接Github的22端口超时
  6. python安装过程中关机_python关机_python 关机_python关机代码 - 云+社区 - 腾讯云
  7. 腾讯云无服务器云函数架构精解
  8. 体育老师述职报告范文
  9. 已解决-Office365邮箱默认的保存时长策略最长只有6个月
  10. 奥升德 (Ascend) 宣布在中国的首次收购