精华内容
下载资源
问答
  • 首先得了解SandBox沙盒 本质就是一个提供给我们app专用文件夹我们可以获取到沙盒path:NSString *home = NSHomeDirectory(); 打印出来复制可以通过Finder-前往-前往文件夹就看可以找到在mac下该项目沙盒位置了...

    首先得了解SandBox沙盒 本质就是一个提供给我们app的专用文件夹
    我们可以获取到沙盒的path:NSString *home = NSHomeDirectory();

    打印出来复制可以通过Finder-前往-前往文件夹就看可以找到在mac下该项目沙盒的位置了
    各位刚接触ios的童鞋应该知道在Bundle中包含了所有的资源文件和可执行文件
    在沙盒目录下我们可以看到三个文件夹Documents、

    Library以及tmp,其中Library下还包含两个目录:

    Documents:保存应用运行时生成的需要持久化的数据,iTunes同步设备时会备份该目录。例如,游戏应

    用可将游戏存档保存在该目录

    Library/Caches:保存应用运行时生成的需要持久化的数据,iTunes同步设备时不会备份该目录。一般

    存储体积较大、不需要备份的非重要数据

    Library/Preference:保存应用的所有偏好设置,iOS的设置应用会在该目录中查找应用的设置信息。

    iTunes同步设备时会备份该目录

    tmp:保存应用运行时所需的临时数据,使用完毕后再将相应的文件从该目录删除。应用没有运行时,系

    统也可能会清除该目录下的文件。iTunes同步设备时不会备份该目录

    实例:

    #import "ViewController.h"
    #import "Person.h"
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        //文件  plist
        //获取沙盒path
        NSMutableDictionary *dic;
        //获取到沙盒路径 追加上沙盒下的documents目录 以及该目录下的一个文件
        NSString *path=[NSHomeDirectory() stringByAppendingPathComponent:@"Documents/cities.plist"];
        NSLog(@"%@",path);//可以看到app沙盒在mac下的位置
        //判断文件是否存在
        if(![[[NSFileManager alloc]init] fileExistsAtPath:path])
        {
            //文件不存在即从远程服务器获取  这里在本地bundle放了一个名为cities的plist文件用来获取作为示例
            dic=[NSMutableDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"cities" ofType:@"plist"]];
        }
        else
        {
            //文件存在则读取
            dic=[NSMutableDictionary dictionaryWithContentsOfFile:path];
        }
        NSLog(@"读取到的文件%@",dic);
        //写入文件到沙盒 writetofile 该方法同样可用于nsstring array data等
        [dic writeToFile:path atomically:YES];
        
        //--------------------------------
        
        //用户配置  使用NSUserDefaults
        //我们可以再里面保存用户名以及密码实现保存登录状态
        [[NSUserDefaults standardUserDefaults] setObject:@"abc" forKey:@"username"];
        [[NSUserDefaults standardUserDefaults] setObject:@"123" forKey:@"password"];
        //读取
        NSString *uName=[[NSUserDefaults standardUserDefaults] objectForKey:@"username"];
        
        //在info.plist中保存有版本信息 使用用户配置保存版本信息来核对是否第一次打开app以显示特性
        //通常在AppDelegate中进行判断
        
        //获取info中的版本信息
        NSDictionary *infoDic=[[NSBundle mainBundle] infoDictionary];
        NSString *str=infoDic[@"CFBundleShortVersionString"];//app版本信息
        //接下来判断用户配置中是否有版本信息 如果有是否和当前app版本信息相同 如果没有或者不同则表示第一次打开该版本的app则显示特性介绍
        
        //--------------------------------
        
        //归档 解档
        NSString *dataPath=[NSHomeDirectory() stringByAppendingPathComponent:@"Documents/info.m" ];
        //通常用来将自定义存放在文件中
        //这里我们定义一个Person类为例子 自定义类需要遵守NSCoding协议实现·encodeWithCoder initWithCoder两个方法
        Person *p=[[Person alloc]init];
        [p setName:@"Liu"];
        [p setAge:15];
        NSMutableData *data=[NSMutableData data];//用来存放编码后的数据
        //创建一个归档器
        NSKeyedArchiver *arch=[[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
        [arch encodeObject:p forKey:@"Person"];//将person对象编码并设置一个key
        [arch finishEncoding];//需要结束编码
        //写入到文件
        [data writeToFile:dataPath atomically:YES];
        
        //解档
        NSKeyedUnarchiver *uarch=[[NSKeyedUnarchiver alloc]initForReadingWithData:[NSData dataWithContentsOfFile:dataPath]];
        Person *per=[uarch decodeObjectForKey:@"Person"];
        NSLog(@"%@----%d",per.name,per.age);
    }
    
    
    @end
    
    person类 包含name和age两个属性:
    #import "Person.h"
    @interface Person()<NSCoding>
    
    @end
    @implementation Person
    -(id)initWithCoder:(NSCoder *)aDecoder
    {
        if(self=[super init])
        {
            _name=[aDecoder decodeObjectForKey:@"name"];
            _age=[[aDecoder decodeObjectForKey:@"age"] integerValue];
        }
        return self;
    }
    -(void)encodeWithCoder:(NSCoder *)aCoder
    {
        [aCoder encodeObject:_name forKey:@"name"];
        [aCoder encodeObject:@(_age) forKey:@"age"];
    }
    @end
    

    转载于:https://www.cnblogs.com/A-Nian/p/4943436.html

    展开全文
  • 最近在学习Oracle 归档日志模式的管理, 特撰写一下学习心得,不足之处还望指出!!! ----------------------------------------------------------...二 Oracle 重做日志的作用: [模拟介质恢复] 1. 关闭数据库归...

    最近在学习Oracle 归档日志模式的管理, 特撰写一下学习心得,不足之处还望指出!!!

    -----------------------------------------------------------

    一 系统环境: 


    1、操作系统:Windows xp sp3
    2、数据库: Oracle 10g 

     

    二 Oracle 重做日志的作用: [模拟介质恢复]

    1. 关闭数据库归档模式:

    SQL> shutdown immediate
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup mount
    ORACLE 例程已经启动。
    
    Total System Global Area  608174080 bytes
    Fixed Size                  1250404 bytes
    Variable Size             159386524 bytes
    Database Buffers          440401920 bytes
    Redo Buffers                7135232 bytes
    数据库装载完毕。
    SQL> alter database noarchivelog;
    
    数据库已更改。
    

      

     

    2.创建测试表空间:

     

    create tablespace test datafile
    'e:\oradata\test.ora' size 5M
    AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED
    default storage (initial 128K next 1M pctincrease 0);

     

    3.创建测试用户与测试表:

     

    drop user test cascade;
    create user test identified by test default tablespace test;
    grant connect,resource to test;
    conn test/test
    
    create table a(a number);
     begin
       for i in 1..100000 loop
        insert into a values(i);
       end loop;
     end;
    
    commit;
    

     

    4. 拷贝test.ora为test1.ora文件。

    5. insert into a select * from a;    --20万条

    6.关闭数据库
      shutdown immediate
     

    7. 将文件test1.ora与test.ora名称互换。

    8. 再次启动数据库
       startup

     

    9. 进行介质恢复:

     

    三 Oracle 归档日志作用: [模拟重做日志丢失]

      1.  紧接着实验二 第9步, 我们开启归档日志:

     

    SQL> alter database archivelog;
    
    数据库已更改。
    
    SQL> alter database open;
    
    数据库已更改。

     

     

     

      2. 删除a表部分数据:

     

    SQL> conn test/test
    已连接。
    SQL> delete from a where rownum<=100000;
    
    已删除100000行。
    
    SQL> commit;
    
    提交完成。


      3. 做重做日志归档操作,并清空当前在线日志文件:

     

     

    SQL> select group#, members, archived, status from v$log;
    
        GROUP#    MEMBERS ARC STATUS
    ---------- ---------- --- ----------------
             1          1 NO  CURRENT
             2          1 YES INACTIVE
             3          1 YES ACTIVE
    
    SQL> alter system switch logfile;
    
    系统已更改。
    SQL> alter system checkpoint;
    
    系统已更改。
    
    SQL> alter database clear logfile group 1;
    
    数据库已更改。
    
    SQL> shutdown immediate
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup
    ORACLE 例程已经启动。
    
    Total System Global Area  608174080 bytes
    Fixed Size                  1250404 bytes
    Variable Size             176163740 bytes
    Database Buffers          423624704 bytes
    Redo Buffers                7135232 bytes
    数据库装载完毕。
    ORA-01113: 文件 11 需要介质恢复
    ORA-01110: 数据文件 11: 'E:\ORADATA\TEST.ORA'
    
    
    SQL> recover database
    ORA-00279: 更改 3455649 (在 11/21/2012 13:23:53 生成) 对于线程 1 是必需的
    ORA-00289: 建议:
    E:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_11_21\O1_MF_1_212_%U_.ARC
    ORA-00280: 更改 3455649 (用于线程 1) 在序列 #212 中
    
    
    指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
    
    已应用的日志。
    完成介质恢复。
    SQL> alter database open;
    
    数据库已更改。
    
    
    

     

     

     

    4. 以test用户登录查看a表中数据是否还原:

     

    SQL> select count(1) from a;
    
      COUNT(1)
    ----------
        100000

     

     

     

     

     

     

     

     

    四  心得:

       Oracle 联机重做日志(ONLINE REDO LOG FILE)主要用于数据库的介质恢复,比如数据文件的损坏。

                    归档日志(ARCHIVED LOG FILE)其实就是对在线日志的备份,毕竟在线日志空间有限而仅能保存一定时间的重做日志数据。

                    归档日志与全库备份文件的结合恢复效果更好。

     

     

     

     

    -------------------------

    present  by  dylan.

     

     

    展开全文
  • 文件的归档

    2016-08-04 12:57:12
    tar命令的使用tar 文件是把几个文件和(或)目录集合在一个文件夹里。是创建备份和归档的最佳工具作用:打包、压缩文件[root@localhost ~]# tar ...

      tar命令的使用

    tar 文件是把几个文件和(或)目录集合在一个文件夹里。是创建备份和归档的最佳工具

    作用:打包、压缩文件

    [root@localhost ~]# tar --help

    Usage: tar [OPTION...][FILE]...

    GNU `tar' saves manyfiles together into a single tape or disk archive, and can

    restore individual filesfrom the archive.

     

    Examples:

      tar -cf archive.tar foo bar  # Create archive.tar from files foo and bar.  创建存档

      tar -tvf archive.tar         # List all files in archive.tarverbosely.列出所有文件

      tar -xf archive.tar          # Extract all files from archive.tar.从archive.tar提取所有文件。

     

    打包:

    tar 选项 包的名称  目标文件/目录

    [root@localhost ~]# tarcvf grub2.tar /boot/grub2/

    # c  create 创建

    #v  详细

    #f  filename

     

    file命令

    作用:确定文件类型

    语法:file  文件名

     

    注:linux系统不根据后缀名识别文件类型

    用file命令查看文件的类型。

     

    [root@localhost ~]# filea.txt

    a.txt: POSIX tar archive(GNU)

    [root@localhost ~]# file/etc/passwd

    /etc/passwd: ASCII text

     

    例:把两个目录或目标+文件打包成一个软件包

    [root@localhost ~]# tarcvf aa.tar /boot/  /etc/passwd

     

    不解包,查看tar中的内容:

    [root@localhost ~]# tartvf grub2.tar

     

    操作-解包:

    [root@localhost ~]# tarxvf grub2.tar

     

    操作-解压指定路径:

    [root@localhost ~]# tarxvf grub2.tar -C /opt/

     

    操作-对比文件的大小:

    [root@localhost ~]# du-sh /boot/grub2/

    8.1M    /boot/grub2/

    [root@localhost ~]# ll -hgrub2.tar

    -rw-r--r-- 1 root root7.7M Feb 17 07:40 grub2.tar

     

     tar  归档 + 压缩

     

    gzip bzip2  zip tar

    压缩格式:gz, bz2, xz, zip, Z

     

    格式(文件名格式): .tar.gz   或  .tgz

     

    语法格式:tar  zcvf  newfile.tar.gz   SOURCE

    压缩:

    [root@localhost ~]# tarzcvf grub2.tar.gz /boot/grub2/

     

     对比大小

    [root@localhost ~]# ll -hgrub2.tar*

    -rw-r--r-- 1 root root7.7M Feb 17 07:40 grub2.tar

    l   -rw-r--r-- 1 root root 3.1M Feb 17 07:56 grub2.tar.gz

     

     解压

    [root@localhost ~]# tarzxvf grub2.tar.gz -C /opt/

     

    归档+压缩 :bz2

    格式(文件名格式): .tar.bz2

    语法格式:tar  jcvf  newfile.tar.gz   SOURCE

    压缩:

    [root@localhost ~]# tar jcvf grub2.tar.bz2/boot/grub2/

     

    对比大小

    [root@localhost ~]# ll -hgrub2.tar*

    -rw-r--r-- 1 root root7.7M Feb 17 07:40 grub2.tar

    -rw-r--r-- 1 root root 2.5M Feb 17 08:02 grub2.tar.bz2

    -rw-r--r-- 1 root root 3.1M Feb 17 07:56 grub2.tar.gz

     

    解压:

    [root@localhost ~]# tar jxvf grub2.tar.bz2-C /opt/

     

    zip软件包解压缩命令

     zip是压缩程序,unzip是解压程序。

    压缩文件

    [root@localhost ~]# zippasswd.zip /etc/passwd

     -r  压缩目录

    格式”zip 选项 名称 源”

    [root@localhost ~]# zip-r grub2.zip /boot/grub2/

    [root@localhost ~]# ll -hgrub2.*

    -rw-r--r-- 1 root root7.7M Feb 17 07:40 grub2.tar

    -rw-r--r-- 1 root root2.5M Feb 17 08:02 grub2.tar.bz2

    -rw-r--r-- 1 root root3.1M Feb 17 07:56 grub2.tar.gz

    -rw-r--r-- 1 root root 3.2M Feb 17 08:11 grub2.zip

     

     解压

    [root@localhost ~]# unzipgrub2.zip -d /opt/ 

    -d指定路径

     

    任务:Linux系统能不能解压rar格式的压缩包?能的话,如何解压? 

    补充:

    压缩命令:gzip  bzip2 xz

    语法格式:

    gzip   文件

    bzip2  文件

    xz     文件

     

    解压:

    gzip  -d   文件

    bzip2 -d   文件

    xz  -d   文件   或   unxz  文件

     

    不解压的情况查看压缩文件内容分别用zcat   和   bzcat 、xzcat

     

    特点:只能对文件进行压缩,且压缩后源文件消失(其中xz命令可以加上-k参数保留源文件)

    展开全文
  • 5 在rman中用crosscheck检查归档日志,2个归档日志都是失败:RMAN> crosscheck archivelog all;释放通道: ORA_DISK_1分配通道: ORA_DISK_1通道 ORA_DISK_1: sid=14 devtype=DISK对归档日志验证失败存档日志...

    5 在rman中用crosscheck检查归档日志,2个归档日志都是失败的:

    RMAN> crosscheck archivelog all;

    释放的通道: ORA_DISK_1

    分配的通道: ORA_DISK_1

    通道 ORA_DISK_1: sid=14 devtype=DISK

    对归档日志的验证失败

    存档日志文件名 =D:OracleORADATATESTARCHIVE1_47.DBF 记录 ID=1 时间戳 =572866

    683

    对归档日志的验证失败

    存档日志文件名 =D:ORACLEORADATATESTARCHIVE11_48.DBF 记录 ID=2 时间戳 =57286

    6931

    已交叉检验的 2 对象

    6 试着同步一下,看行不行,结果不行,crosscheck还是失败:

    RMAN> resync catalog;

    正在启动全部恢复目录的 resync

    完成全部 resync

    RMAN> crosscheck archivelog all;

    释放的通道: ORA_DISK_1

    分配的通道: ORA_DISK_1

    通道 ORA_DISK_1: sid=14 devtype=DISK

    对归档日志的验证失败

    存档日志文件名 =D:ORACLEORADATATESTARCHIVE1_47.DBF 记录 ID=1 时间戳 =572866

    683

    对归档日志的验证失败

    存档日志文件名 =D:ORACLEORADATATESTARCHIVE11_48.DBF 记录 ID=2 时间戳 =57286

    6931

    已交叉检验的 2 对象

    7 用list expired看看是否有失效的archive log,证明没有失效的archive log:

    RMAN> list expired archivelog all;

    说明与恢复目录中的任何存档日志均不匹配

    8 更改语言环境试试,结果再次crosscheck,2个archive log 都成功了:

    RMAN> exit

    恢复管理器完成。

    C:>set nls_lang=american_america.zhs16gbk

    C:>rman catalogrman/rman@safetarget /

    Recovery Manager: Release 9.2.0.1.0 - Production

    Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.

    connected to target database: TEST (DBID=1870953724)

    connected to recovery catalog database

    RMAN> crosscheck archivelog all;

    allocated channel: ORA_DISK_1

    channel ORA_DISK_1: sid=9 devtype=DISK

    validation succeeded for archived log

    archive log filename=D:ORACLEORADATATESTARCHIVE1_47.DBF recid=1 stamp=57286

    6683

    validation succeeded for archived log

    archive log filename=D:ORACLEORADATATESTARCHIVE11_48.DBF recid=2 stamp=5728

    66931

    Crosschecked 2 objects0b1331709591d260c1c78e86d0c51c18.png

    展开全文
  • 在ORACLE 数据库开发环境和测试环境中,数据库日志模式和自动归档模式一般都是不设置,这样有利于系统应用调整,也免生成大量的归档日志文件将磁盘空间大量消耗。但在系统上线,成为生产环境时,将其...
  • hadoop 文件元数据都保存在namenode中,小文件过多会造成nn 内存耗尽,一个文件一般占用nn 120kb 左右内存,防止小文件过多,小文件采用归档archive 方式使好多小文件被nn看成是一个文件 archive 作用 减少nn ...
  • RMAN> delete noprompt archivelog until time "sysdate -3"; 释放通道: ORA_DISK_1释放通道: ORA_DISK_2释放通道: ORA_DISK_...
  • iOS归档看这篇就够了

    2021-01-11 18:36:32
    归档的作用 之前将数据存储到本地,只能是字符串、数组、字典、NSNuber、BOOL等容器类对象,不能将自定义对象进行保存,而通过归档能将所有的对象转化为二进制数据存储到文件中。 什么是归档 当遇到有结构有组织...
  • 归档

    2016-05-16 20:15:37
    沙盒机制就是系统针对于每一个程序在本地生成文件夹(名字随机生成), 对于不同应用程序, 不能访问其他应用程序沙盒内内容, 对于该应用程序内容起到保护作用:1 Documents:用来存储长久保存数据 2 xxx.app:...
  • =文件的归档==== ...是创建备份和归档的最好工具。 tar c ##建立一个压缩文家的参数指令. f ##指定归档文件名称。 x ##解开一个归档文件的参数指令。 t ##显示归档文件中的内容 ...
  • 一 非归档模式下 D:>sqlplus "/ as sysdba" 数据库版本为9.2.0.1.0 SQL*Plus: Release 9.2.0.1.0 - Production on 星期一 8月 14 10:20:39 2006 Copyright (c) 1982, 2002, Oracle Corporation. All rights ...
  • 归档的作用 之前将数据存储到本地,只能是字符串、数组、字典、NSNuber、BOOL等容器类对象,不能将自定义对象进行保存,而通过归档能将所有的对象转化为二进制数据存储到文件中。 归档的缺点 归档保存数据,只能...
  • 归档的作用就是将对象以文件的形式保存到磁盘中,以使得数据序列化和持久化。 使用归档的时候读取该文件保存路径来读取文件的内容,归档的文件是进行过保密处理的,在磁盘上是无法查看文件的内容的,这也是和属性...
  • 文件的归档和解压缩

    2019-03-24 13:59:19
    1. tar命令进行文件的归档和压缩 1.1 归档和压缩文件 归档和压缩文件好处:节约硬盘资源 ,加快文件传输速率 tar命令 作用:打包、压缩文件 如图所示: 作用:打包、压缩文件;tar 文件是把几个文件和(或...
  • 归档的好处:  方便使用、查询、阅读  易于管理 (批量删除文件) 为什么要压缩 如果直接传输会大量的占用流量带宽.导致公司的内网访问速度缓慢. 传输前压缩–传输后解压 文件压缩的好处 节约硬盘的资源. 加快...
  • 文件的归档和压缩

    2020-04-20 21:14:44
    一,tar命令进行文件的归档和压缩 1,归档和压缩文件 归档和压缩文件好处:节约硬盘资源,加快文件传输速率 tar 作用:打包、压缩文件 打包、压缩文件;tar 文件是把几个文件和(或)目录集合在一个文件...
  • 归档的作用就是将对象以文件的形式保存到磁盘中,以使得数据序列化和持久化。 使用归档的时候读取该文件保存路径来读取文件的内容,归档的文件是进行过保密处理的,在磁盘上是无法查看文件的内容的,这也是和属性...
  • 2.8 文件的归档和压缩

    2019-10-23 09:29:52
    一、tar命令进行文件的归档和压缩 tar命令进行文件的归档和压缩 归档和压缩文件 归档和压缩文件好处:节约硬盘资源 ,加快文件传输速率 tar命令 作用:打包、压缩文件 作用:打包、压缩文件;tar 文件是把几个...
  • RAC模式下用常规方式关闭归档的时候,报错:ORA-01126: database must be mounted EXCLUSIVE,需要用一下步骤进行处理: 关闭自动归档 Alter system set log_archive_start=false scope=spfile 参看参数 SQL> ...
  • 项目归档目录的合理性对于项目文件的完整性、可查性有着至关重要的作用。在以项目驱动的研发团队管理过程中,要有项目归档又要有研发归档,随着团队结构的日益变化,归档当的结构也会稍有不同,总的原则是通过归档...
  • 归档和压缩文件 归档和压缩文件好处:节约硬盘资源 ,加快文件传输速率。 tar 命令 作用:打包、压缩文件,
  • Linux 文件的归档和压缩

    千次阅读 2017-03-27 11:48:19
    归档的好处:  方便使用、查询、阅读  易于管理 (批量删除文件) 为什么要压缩 如果直接传输会大量的占用流量带宽.导致公司的内网访问速度缓慢. 传输前压缩--传输后解压 文件压缩的好处 节约硬盘的资源. ...
  • 归档日志进程是可选进程,该进程并不在实例启动时自动启动,它的作用是把写满的重要日志文件的数据写到一个归档日志中,这个归档日志用作介质故障时的数据库恢复。重做日志文件负载实例失败是的数据恢复,因为SGA中...
  • 对于ORACLE的日常运维来说,ORACLE的联机日志和归档日志具有十分重要的作用,通过对联机日志、归档日志的分析和挖掘,不仅可以评估ORACLE历史压力,在出现数据丢失的时候还是数据恢复的重要依据,因此熟悉和掌握如何...
  • 归档的好处方便使用、查询、阅读易于管理(批量操作文件)文件压缩的好处加快文件传输的速率节约硬盘的资源Linux文件中的文件归档与压缩1.1 tar命令的使用1.1.1 作用:打包、压缩文件[root@duwen113~]#tar--help ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 844
精华内容 337
关键字:

归档的作用