Azure CLI 是什么

Azure 命令行接口 (CLI) 是用于管理 Azure 资源的 Microsoft 跨平台命令行体验。 Azure CLI 易于学习,是构建适用于 Azure 资源的自定义自动化功能的完美工具。

通俗的说就是:可以让我们通过一系列的命令行接口来管理我们的Azure 资源,如部署应用,设置防火墙,数据库导出备份等等。

如何使用

首先我们下载一个 Azure CLI客户端,点这里下载,下载完成后,我们可以通过 Windows PowerShell 查看azure cli 的版本,输入  az --version可查看版本号。
P.S:最新版Azure CLI 的命令都是以 “az”开头,可以通过Windows 命令提示符、Windows PowerShell浏览器 + Azure Cloud Shell 等三种方式运行。这里我们使用**Windows PowerShell **这个工具来实现我们的命令。

Part1-登录

登录命令如下:az login  ,如果用到的是由世纪互联运营的中国版Azure ,请先执行 az cloud set -n AzureChinaCloud  以切换到中国区登录。
连接你的账户的命令是:Connect-AzAccount  ,中国区是:Connect-AzAccount -Environment AzureChinaCloud

Part2-部署

这里部署的是一个应用服务

az webapp deployment source config-zip --resource-group GroupName --name AppName --src D:\MyProject\Publish\Publish.zip
  • GroupName 是你的资源组名称
  • AppName 是你的应用名称
  • src 后面的是你的部署文件路径(文件只能是zip)

Part3-数据库

防火墙

这里利用了 这个网址http://2019.ip138.com/ic.asp 的获取本机IP的接口然后修改对应防火墙规则的IP地址。

param($Server)
$Ip = Invoke-WebRequest -Uri "http://2019.ip138.com/ic.asp"
$str=$null
if ($Ip.StatusCode -eq 200)
{
[string]$str = $Ip.ParsedHtml.body.innerHTML
$StartIndex = $str.IndexOf("[")
$EndIndex = $str.IndexOf("]")
$length = $EndIndex - $StartIndex - 1
$ip = $str.Substring($StartIndex + 1, $length)
$ip
}
else
{
Write-Warning "Bad Request"
}
az sql server firewall-rule update -g groupname -s $Server -n firefulename --start-ip-address $Ip --end-ip-address $Ip
  • groupname  是你的资源组名称
  • firefulename 是你的防火墙规则名称

备份

若提示登录凭据已失效,中国区需执行:Connect-AzAccount -Environment AzureChinaCloud
再执行以下命令(文中导出路径已固定本地文件夹,可自行调整):

$today=Get-Date
$dbName="yourdbname"
$bacName=$dbName+"-"+$today.ToString('yyyy-M-d-H-m')+".bacpac"
$Secure_String_Pwd=ConvertTo-SecureString "yourpassword" -AsPlainText -Force
$exportRequest = New-AzSqlDatabaseExport -ResourceGroupName YourGroupName -ServerName YourServer -DatabaseName $dbName -StorageKeytype StorageAccessKey -StorageKey storagekeythisVwZJQg4go430testww5S+L3r32OPHxSuzRABCWWCv4N/YWEX6rln8JWUQhckA== -StorageUri https://yourstorage.blob.core.chinacloudapi.cn/database-container/$bacName -AdministratorLogin youraccount -AdministratorLoginPassword $Secure_String_Pwd
$exportRequest
Start-Sleep -s 90
$ctx = New-AzStorageContext -ConnectionString "yourconnectionstringstr"
$ContainerName='yourcontainer'
Get-AzStorageblobcontent -Blob $bacName `
-Container $containerName `
-Destination 'D:\yourlocal\backup' `
-Context $ctx

Part4-存储

导出Blob

$ctx = New-AzStorageContext -ConnectionString "yourconnectionstring"
$bacName="yourblobname"
$ContainerName='yourcontainer'
Get-AzStorageblobcontent -Blob $bacName `
-Container $containerName `
-Destination 'D:\yourlocal\backup' `
-Context $ctx

参考资料

Azure CLI 简单入门的更多相关文章

  1. 使用 Azure CLI 创建 Windows 虚拟机

    Azure CLI 用于从命令行或脚本创建和管理 Azure 资源. 本指南详细介绍如何使用 Azure CLI 部署运行 Windows Server 2016 的虚拟机. 部署完成后,我们连接到服 ...

  2. 使用 Azure CLI 创建 Linux 虚拟机

    Azure CLI 用于从命令行或脚本创建和管理 Azure 资源. 本指南详细介绍了如何使用 Azure CLI 部署运行 Ubuntu 服务器的虚拟机. 服务器部署以后,将创建 SSH 连接,并且 ...

  3. Vue的简单入门

    Vue的简单入门 一.什么是Vue? vue.js也一个渐进式JavaScript框架,可以独立完成前后端分离式web项目 渐进式:vue可以从小到控制页面中的一个变量后到页面中一块内容再到整个页面, ...

  4. Flyway 简单入门教程

    原文地址:Flyway 简单入门教程 博客地址:http://www.extlight.com 一.前言 Flyway 是一款开源的数据库版本管理工具,它更倾向于规约优于配置的方式.Flyway 可以 ...

  5. [推荐] 网络侦查工具 NMAP 简单入门

    [推荐] 网络侦查工具 NMAP 简单入门 # 前言 作为一只运维开发,总是避不开要和网络打交道的.尤其是当自身能力到达瓶颈,开始从事云计算以求突破.会有搭建多台虚拟机的需要,这时候如果在手工的查询 ...

  6. 使用 Azure CLI 在 Azure China Cloud 云平台上手动部署一套 Cloud Foundry

    这篇文章将介绍如何使用 Azure CLI 在 Azure China Cloud 云平台上手动部署一套 Cloud Foundry.本文的目的在于: 了解作为 PaaS 的 Cloud Foundr ...

  7. Azure CLI 2.0-Azure新命令行工具介绍

    Azure CLI 2.0 是 Azure 的新命令行体验,用于管理 Azure 资源. 可以将其安装在 macOS.Linux 和 Windows 上,然后从命令行运行它. Azure CLI 2. ...

  8. 一篇文章带你了解NoSql数据库——Redis简单入门

    一篇文章带你了解NoSql数据库--Redis简单入门 Redis是一个基于内存的key-value结构数据库 我们会利用其内存存储速度快,读写性能高的特点去完成企业中的一些热门数据的储存信息 在本篇 ...

  9. Azure DevOps Server 入门实践与安装部署

    一,引言 最近一段时间,公司希望在自己的服务器上安装本地版的 Azure DevOps Service(Azure DevOps Server),用于项目内的测试,学习.本着学习的目的,我也就开始学习 ...

随机推荐

  1. sklearn包源码分析(一)--neighbors

    python如何查看内置函数的用法及其源码? 在anaconda的安装目录下,有一块会放着我们安装的所有包,在里面可以找到所有的包 找到scikit learn包,进入 这里面又有了多个子包,每个子包 ...

  2. [LC] 240. Search a 2D Matrix II

    Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the follo ...

  3. list split批量处理

    <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-colle ...

  4. Hadoop什么?

    Hadoop是什么?Hadoop是一个开发和运行处理大规模数据的软件平台,是Appach的一个用java语言实现开源软件框架,实现在大量计算机组成的集群中对海量数据进行分布式计算. Hadoop框架中 ...

  5. Ajax 请求参数过多导致 400 错误 and BCryptPasswordEncoder 加密判断

    2019/06/19 先分享一种密码加密方式: Spring Security 提供了 BCryptPasswordEncoder类, 实现Spring的PasswordEncoder接口使用BCry ...

  6. [洛谷P3369] 普通平衡树 Treap & Splay

    这个就是存一下板子...... 题目传送门 Treap的实现应该是比较正经的. 插入删除前驱后继排名什么的都是平衡树的基本操作. #include<cstdio> #include< ...

  7. 高效能Windows人士的N个习惯之一:启动篇

    接触电脑十多年,经历了各种折腾阶段,这几年开始沉静下来,不再追求花哨的界面与应用,只注重工作的效率,逐渐养成了一套自己的操作习惯,感觉不错,特撰文分享.标题借用了一下<高效能人士的七个习惯> ...

  8. Docker Linux下安装

    下载脚本并运行安装: sudo wget -qO- https://get.docker.com/ | sh wget:下载文件工具, -q:不显示指令执行过程, -O-:-O-以'-'作为file参 ...

  9. Ubuntu环境下的iptables的端口转发配置实例

    打开转发开关要让iptables的端口转发生效,首先需要打开转发开关方法一:临时打开,重启后失效$sudo su#echo 1 >/proc/sys/net/ipv4/ip_forward 方法 ...

  10. (为容器分配独立IP方法二)通过虚拟IP实现docker宿主机增加对外IP接口

    虚拟IP.何为虚拟IP,就是一个未分配给真实主机的IP,也就是说对外提供数据库服务器的主机除了有一个真实IP外还有一个虚IP,使用这两个IP中的任意一个都可以连接到这台主机,所有项目中数据库链接一项配 ...