标签: azure-storage

Azure存储帐户备份(表和blob)

我需要定期备份Azure存储帐户中的所有blob和表,以便我们可以在以后因任何原因损坏我们的数据而还原所有数据.

虽然我相信我们存储在Azure中的数据是持久的并且在数据中心发生故障时可以恢复,但我们仍然需要备份存储帐户中的数据以防止意外覆盖和删除(人为错误因素).

我们为此实施了一个解决方案,定期列出所有blob并将其复制到备份存储帐户.修改或删除blob后,我们只需在备份帐户中创建旧版本的快照.

这种方法对我们有效.但它只处理blob,而不是表实体.我们现在也需要支持备份表实体.

现在面对这个任务,我想其他人可能之前已经有了这个要求并提出了一个智能解决方案.或者也许有商业产品可以做到这一点?

备份目标不是另一个Azure存储帐户.我们所需要的只是一种恢复所有blob和表的方法,就像我们运行备份时一样.

任何帮助表示赞赏!

backup azure azure-storage

20
推荐指数
1
解决办法
1万
查看次数

Azure.ConfigurationManager与.Net Core兼容吗?

我正在使用.Net Core v1.0,并希望在我的应用程序中使用Azure表存储.我通过NuGet成功安装了Azure.Storage包,但是当我安装Azure.ConfigurationManager包时,我在执行dotnet恢复时出现此错误:

Package Microsoft.WindowsAzure.ConfigurationManager 3.2.1 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0).
Package Microsoft.WindowsAzure.ConfigurationManager 3.2.1 supports: net40 (.NETFramework,Version=v4.0)
    One or more packages are incompatible with .NETCoreApp,Version=v1.0.
Run Code Online (Sandbox Code Playgroud)

有没有解决的办法?我可以在没有ConfigurationManager的情况下使用Azure表存储吗?

谢谢!

编辑(2016年10月4日):
您似乎可以在没有ConfigurationManager的情况下使用Azure表存储,但是您将无法在运行时访问和修改应用程序设置.存储配置连接字符串 - 解析连接字符串

azure azure-storage azure-storage-blobs

20
推荐指数
1
解决办法
5156
查看次数

windows azure开发存储blob服务无法启动

当我启动开发存储模拟器时,我收到一个错误

The process cannot access the file because it is being used by another process

我想这只发生在BLOB,其他服务,即Queue和Tables启动成功

可能是什么问题呢?我使用的是Azure SDK v1.4

开发存储模拟器启动错误

azure azure-storage azure-storage-emulator

19
推荐指数
2
解决办法
3576
查看次数

Azure blob名称的最大长度是多少

在Azure本身,我发现我可以制作名称长度为1000但不是1100的blob(所以我猜1024).使用dev存储我可以做200但不是300(所以我想有些东西与MAX_PATH有关).有官方限制吗?

azure azure-storage azure-storage-blobs

19
推荐指数
2
解决办法
9649
查看次数

从Azure下载.vhd映像到本地计算机,并上载到另一个Azure帐户

我想将VM映像下载到本地计算机,因此我可以在本地使用它并将其上载到Azure的另一个凭据.我知道有blob URL,但是wget没有帮助下载它,因为它发生了

<Error>
<Code>ResourceNotFound</Code>
<Message>
The specified resource does not exist. RequestId:e7ffa746-b35c-44f3-a354-af2abfdaa823 Time:2012-09-27T18:07:00.3196644Z
</Message>
</Error>
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我还尝试使用Azure CMDLets将VM映像从一个Azure帐户迁移到另一个帐户,但由于CMDLets在多个凭据中无法正常工作,因此遇到了麻烦.

cloud powershell virtual-machine azure azure-storage

19
推荐指数
3
解决办法
3万
查看次数

如何在不覆盖的情况下上传到Azure Blob存储?

默认情况下调用UploadFromStream会覆盖文件 - 如果blob尚未包含在容器中,我如何确保只上传blob?

CloudBlockBlob blockBlob = container.GetBlockBlobReference(blobName);
blockBlob.UploadFromStream(stream)
Run Code Online (Sandbox Code Playgroud)

.net azure azure-storage

19
推荐指数
2
解决办法
7188
查看次数

GetBlobReference和GetBlobReferenceFromServer有什么区别?

我试图将一些图像保存到azure blob存储中,并且有两种方法可以获得blob GetBlobReferenceGetBlobreferenceFromServer的引用, 但我找不到两者之间的区别.

这两者有什么区别吗?

azure azure-storage

19
推荐指数
1
解决办法
6142
查看次数

上传blockblob并设置contenttype

我正在使用Microsoft.WindowsAzure.Storage.*C#中的库.

这就是我将内容上传到存储的方式:

// Store in storage
CloudStorageAccount storageAccount = CloudStorageAccount.Parse("...connection string...");
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference("pictures");

// Create container if it doesnt exist
container.CreateIfNotExists();

// Make available to everyone
container.SetPermissions(new BlobContainerPermissions
{
    PublicAccess = BlobContainerPublicAccessType.Blob
});

// Save image
CloudBlockBlob blockBlob = container.GetBlockBlobReference("blah.jpg");
blockBlob.UploadFromByteArray(byteArrayThumbnail, 0, byteArrayThumbnail.Length);
blockBlob.Properties.ContentType = "image/jpg";  // *** NOT WORKING ***
Run Code Online (Sandbox Code Playgroud)

我上传到存储的所有内容都以内容类型"application/octet-stream"保存,即使我使用的值为"image/jpg"的setter(请参阅我的代码中的最后一行).

问题#1:为什么不使用ContentType setter?

问题2:如果我手动将内容类型更改为"image/jpg",使用Windows Azure管理门户,然后将文件的绝对URI复制到浏览器的地址字段,然后按回车键,则会下载jpg文件而不是显示.是不是应该显示这个mime类型而不是下载?我该如何改变?

c# content-type azure azure-storage azure-storage-blobs

19
推荐指数
4
解决办法
2万
查看次数

更改Azure资源组位置

我在azure中设置了一组资源组合在一起的资源.我希望我的服务位于西欧,所以我的所有资源都在那里(如果可能的话)

我刚刚注意到,在创建资源组时,我意外地使用了West US.

所以目前的设置是:

资源组1(美国西部)

  • App Service 1(西欧)
  • App Service 2(西欧)
  • SQL Server(西欧)
  • 存储帐户(西欧)
  • ......(西欧)

我是否可以更改资源组的位置而无需创建新资源组并进行迁移?

也许更重要的是:我应该改变位置还是不影响任何东西?

谢谢!

azure azure-storage azure-web-sites azure-resource-manager azure-sql-database

19
推荐指数
2
解决办法
2万
查看次数

如何从程序中启动Azure存储模拟器

我有一些使用Azure存储的单元测试.在本地运行这些时,我希望它们使用Azure存储模拟器,它是Azure SDK v1.5的一部分.如果模拟器没有运行,我希望它能够启动.

要从命令行启动模拟器,我可以使用:

"C:\Program Files\Windows Azure SDK\v1.5\bin\csrun" /devstore
Run Code Online (Sandbox Code Playgroud)

这很好用.

当我尝试使用这个C#代码启动它时,它会崩溃:

using System.IO;
using System.Diagnostics;
...
ProcessStartInfo processToStart = new ProcessStartInfo() 
{   
    FileName = Path.Combine(SDKDirectory, "csrun"),
    Arguments = "/devstore"
};
Process.Start(processToStart);
Run Code Online (Sandbox Code Playgroud)

我试过摆弄一些ProcessStartInfo设置,但似乎没有任何效果.有人有这个问题吗?

我检查了应用程序事件日志,发现了以下两个条目:

事件ID:1023 .NET运行时版本2.0.50727.5446 - 致命执行引擎错误(000007FEF46B40D2)(80131506)

事件ID:1000 故障应用程序名称:DSService.exe,版本:6.0.6002.18312,时间戳:0x4e5d8cf3故障模块名称:mscorwks.dll,版本:2.0.50727.5446,时间戳:0x4d8cdb54异常代码:0xc0000005故障偏移:0x00000000001de8d4故障处理id:0x%9错误应用程序启动时间:0x%10错误应用程序路径:%11错误模块路径:%12报告ID:%13

c# azure azure-storage

18
推荐指数
2
解决办法
1万
查看次数