操作系统

当前位置:金沙棋牌 > 操作系统 > 阿里云数据存储,阿里云开发之OSS数据迁移

阿里云数据存储,阿里云开发之OSS数据迁移

来源:http://www.logblo.com 作者:金沙棋牌 时间:2019-11-21 10:22

近些日子由于连串必要,供给将贰个aliyun账号下的oss数据导入到两二个aliyun账号下的oss,经过朝气蓬勃番坎坷,最后消除。

金沙棋牌,事先项目中供给用到Ali云数据存款和储蓄,在网络参照他事他说加以考察,本身做个记录,便于日后翻开。

oss是Ali云推出的图片存款和储蓄服务,在品种植花朵费进度中用到的图纸上传,就足以直接放到Ali云的oss中,那样不但能够节约我们项目本身的应用空间,同临时间当项目中的图片进行搬迁的时候,也不会变成图片遗失的情况;

1.https://www.aliyun.com报到阿里云,开通oss图片存款和储蓄(如若你还未账号必要首先登场记获取Access Key ID和Access Key Secret卡塔 尔(阿拉伯语:قطر‎

2.新建bucket(注意命名空间,最棒设置公共读写卡塔尔国

3.阿里云的账号音讯

NSString * const AccessKey = @"";

NSString * const SecretKey = @"";

4.用到cocoa pods 引进Ali云的SDK,AliyunOSSiOS

5.OSSClient是OSS服务的iOS客商端,它为调用者提供了一丰富多彩标秘籍,用于和OSS服务扩充相互作用。平日的话,全局内只需求保持八个OSSClient,用来调用各类操作。

@interface ViewController ()<UIImagePickerControllerDelegate, UINavigationControllerDelegate>
{
    OSSClient *client;
}
@end

6.用明文AK/SK达成的加签器(官方建议只在测验方式时接受卡塔尔国

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info {
    UIImage *image = info[UIImagePickerControllerOriginalImage];

    [picker dismissViewControllerAnimated:YES completion:^{

    }];
    if (UIImagePNGRepresentation(image)) {
        self.imageData = UIImagePNGRepresentation(image);
    }else {
        self.imageData = UIImageJPEGRepresentation(image, 0.1);
    }
    //参数设置
     NSString *endpoint = @"http://******.com";
    //CredentialProvider协议,要求实现加签接口
    //用明文AK/SK实现的加签器,建议只在测试模式时使用
    id<OSSCredentialProvider> credential = [[OSSPlainTextAKSKPairCredentialProvider alloc]initWithPlainTextAccessKey:AccessKey secretKey:SecretKey];
    client = [[OSSClient alloc]initWithEndpoint:endpoint credentialProvider:credential];
    //OSSClient可以设置的参数
    OSSClientConfiguration *config = [[OSSClientConfiguration alloc]init];
    /**
     最大重试次数
     */
    config.maxRetryCount = 2;
     /**
     请求超时时间
     */
    config.timeoutIntervalForRequest = 30;
     /**
     单个Object下载的最长持续时间
     */
    config.timeoutIntervalForResource = 60*60;
    client.clientConfiguration = config;
     /**
     上传Object的请求头
     */
    OSSPutObjectRequest *put = [[OSSPutObjectRequest alloc]init];
     /**
     Bucket名称
     */
    put.bucketName = @"***";
     /**
      从内存中的NSData上传时,通过这个字段设置
     */
    put.uploadingData = self.imageData;
    NSString *objectKey = [NSString stringWithFormat:@"123_ios_326/%@.jpg",[self getTimeNow]];
     /**
     Object名称
     */
    put.objectKey = objectKey;
    OSSTask *putTask = [client putObject:put];
    [putTask continueWithBlock:^id _Nullable(OSSTask * _Nonnull task) {
        task = [client presignPublicURLWithBucketName:put.bucketName withObjectKey:put.objectKey];
        NSLog(@"objectKey: %@", put.objectKey);
        if (!task.error) {
            NSLog(@"上传成功");
        } else {
            NSLog(@"上传失败%@" , task.error);
        }
        return nil;
    }];
}
- (NSString *)getTimeNow
{
    NSDate *datenow = [NSDate date];//现在时间
    NSString *timeSp = [NSString stringWithFormat:@"%ld", (long)[datenow timeIntervalSince1970]];
    return timeSp;
}

原稿参照他事他说加以侦察链接:http://www.jianshu.com/p/27435fe627be

1.查看oss数据迁移官方文书档案,作者是在本地windows计算机上扩充操作的,先下载了合法给出的数码迁移工具,不过,给出那些工具的老哥不太用心呀!下载下来依照文书档案操作,现身乱码诱致没发使用!最后改正了编码格式,才方可解决,最后可用的重复校正后的数据迁移工具

2.把工具下载下来后,解压,张开ossimport-v2.1-win-->ossimport-->conf-->local_job.cfg,如下:

金沙棋牌 1

3.改过实现后就能够标准启幕搬迁了,点击“一键导入.bat”,剩下的就交给工具管理就ok了!

4.方方面面搬迁进度相比较持久(那时自身的数码有2G),最后程序履行完结,如下图:

金沙棋牌 2

 

本文由金沙棋牌发布于操作系统,转载请注明出处:阿里云数据存储,阿里云开发之OSS数据迁移

关键词: