2017年11月10日金曜日

Visual Studio CodeでSQLサーバーにSQLを発行する方法

Visual Studio CodeでSQLサーバーへ接続し、SQLを発行する手順は以下になります。
  1. mssql拡張機能をインストール
  2. 新しいファイルを作ったら、「Ctrl-K, M」で言語を選択して、「SQL」を選択
  3. 「Ctrl-Shift-C」もしくは「Ctrl-Shift-P」から「MS: Connect」を選択
  4. 作成済みのConnection Profileがあれば選択、無ければ「Create Connection Profile」を選択
  5. Connection Profileを作成する場合は、サーバー名等の接続情報を入力 (settings.jsonを直接編集するのも可)
  6. SQLサーバーに接続したら、SQLを記述し、「Ctrl-Shift-E」で実行

2017年10月10日火曜日

Azure SQL DBにVET Service TunnelまたはVNET ACLと呼ばれる機能が追加されました。
Public preview: Virtual network service endpoints for Azure Storage and SQL Database

これはSQL DBからみて特定のVNETに属しているVMからのみのアクセスを許可するというものです。アクセスはパブリックIPによる接続になります。プライベートネットワーク内にSQL DBを囲い込むものではないのですが、従来のファイアウォール規則でのIP範囲によるアクセス許可よりも柔軟にできるため、いろいろ使い勝手はあがりそうです。

2017年7月31日月曜日

Bing Web Search APIのサービスレベル変更に伴う課金について

Microsoft Cognitive Sercicesの一つであるBing Web Search APIの課金は月単位で行われます。サービスのレベルをアップグレードすると、FAQに記載されているようにアップグレード後のレベルに対応する課金レートと含まれるトランザクション数がすぐに適用されます。

ただし、月の途中でダウングレードしても、その月で最も高いサービスレベルの課金レートが適用されるとのことです。

2017年5月25日木曜日

Azure Database for MySQLを使ってみる

Azure Database for MySQLがパブリックプレビューとしてリリースされたので、こちらのドキュメントの手順に従って、サービスを作成してみます。
https://docs.microsoft.com/ja-jp/azure/mysql/

PowerShellのドキュメントが無いので、Azure CLIでMySQLサーバーを作成します。Azure Cloud ShellにCLI環境及びmysqlコマンドラインツールが入っているので、こちらを使ってもよいと思います。

Azureサブスクリプションにログインしたら、まずリソースグループ「rg-manageddb」を東日本に作成します。
az group create --name rg-manageddb --location japaneast

Azure Database for MySQLサーバーを作成します。サーバー名「mkmysql01」、管理者ユーザー「mysqladmin」、パフォーマンスレベル「Basic」、コンピューティングユニット「100」で東日本に作成します。なお、2017/5/25時点ではバージョンを指定しない場合は5.6で作成されるようです。
az mysql server create --resource-group rg-manageddb --name mkmysql01 \
  --location japaneast --admin-user mysqladmin --admin-password Password01! \
  --performance-tier Basic --compute-units 100 
※ 引数が2017/5/25時点のドキュメントと異なっているようで、管理者ユーザーのユーザー名とパスワードは「--admin-user」、「--admin-password」で指定するようです。

MySQLサーバーに接続するために、ファイアウォールを設定します。ここでは接続するクライアントのIPのみ許可しています。
az mysql server firewall-rule create --resource-group rg-manageddb \
  --server mkmysql01 --name AllowClientIP \
  --start-ip-address <クライアントのIPアドレス> \
  --end-ip-address <クライアントのIPアドレス>

以上でMySQLサーバーの作成及び初期設定が完了しました。

次に、作成されたMySQLサーバーの初期状態を確認してみます。

MySQLサーバーに接続するためのホスト情報を取得します。結果はJSON形式で取得できます。fullyQualifiedDomainNameがホスト情報になります。
az mysql server show --resource-group rg-manageddb --name mkmysql01

mysqlコマンドラインツールでMySQLサーバーに接続します。
mysql -h mkmysql01.mysql.database.azure.com -u mysqladmin@mkmysql01 -p

データベースを確認します。
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+

「mysql」データベースに接続して、テーブルを確認します。
mysql> use mysql

mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| __firewall_rules__        |
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| innodb_index_stats        |
| innodb_table_stats        |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| proxies_priv              |
| servers                   |
| slave_master_info         |
| slave_relay_log_info      |
| slave_worker_info         |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+

ユーザーを確認します。
mysql> select host,user from user;
+-----------+-----------------+
| host      | user            |
+-----------+-----------------+
| %         | mysqladmin      |
| 127.0.0.1 | azure_superuser |
| localhost | azure_superuser |
+-----------+-----------------+

作成後はこのような状態でした。

2017年5月11日木曜日

Azure Cloud Shell

Azure PortalでCLIが使えるAzure Cloud Shellが提供されるようになりました。なお、Java、Node、GOあたりも初めから入っています。
dmesgでみるとUbuntuを使っているようですね。

2017年2月22日水曜日

論文検索サイト

技術情報だけでなく、研究関連情報を知りたいときもありますよね。 そんな時はMicrosoft Academic Searchがとても便利です。
https://academic.microsoft.com/

検索時に論文タイトルや著者の補完をしてくれるだけでなく、著者の執筆数や引用数、研究分野の神も探せるという、とても役立つサイトですので、ぜひ使ってみてください。