Excel+MySQL連携:1 エクセルからさくらのレンタルサーバのMySQLへ接続する方法

KAI
pasocafe
Published in
8 min readDec 16, 2015

--

エクセル(Excel)とMySQLを連携する方法について書いていこうと思います。

なぜ、こんなことをやったのかというと、ワードプレスのデータベースの情報を手軽にエクセルで見たかったからです。phpMyAdminなど使えばもちろん見れるのですが、参照するだけならエクセルでもいいかなと。

あまりこういう使い方する人はいないかもしれませんが、忘れっぽいので備忘録として残しておきます。
たまたま、誰かの役に立てば嬉しいですね^^

数回に分けて投稿しようと思います。ざっくりとした内容は次の通りです。

(1)さくらのレンタルサーバのMySQLへ自分のwindowsパソコンからsshで接続する方法 ←今回の投稿
(2)ODBCでMySQLへ接続してデータベースの情報を見る方法
(3)Power QueryでMySQLへ接続してデータベースの情報を見る方法
(4)Excel VBAでMySQLへ接続してデータベースの情報を見る方法
(5)Excel VBAでMySQLへ接続してCRUD操作する方法

それでは早速(1)さくらのレンタルサーバのMySQLへ自分のwindowsパソコンからsshで接続する方法から始めます。

ステップ1:PortForwarderをダウンロードしよう

まずはじめに、自分のパソコンとさくらのレンタルサーバとをSSHで接続するための設定をします。この設定にはいくつかの方法(Tera Term、PuTTYなどのソフトを使う)がありますが、今回は誰でも手軽に実践できる方法を選択しました。

こちらのリンクよりPortForwarderをダウンロードします。以下のように「PortForwarder-2.9.0.zip」をクリックし保存します。

portforwarder1

※最新版はこちらのサイトを参考。
ダウンロードしたファイルはZIPファイルというものでそのままでは使えないため、解凍という処理を行う必要があります。解凍の方法は下図のようにダウンロードしたファイルをクリックして選択し、次に右クリック>すべて展開 の順にクリックします。
(お使いのPCによって表示が異なることがあります)

portforwarder2

解凍が正常に完了すると次のようなファイルが展開されます。

portforwarder4

次に「PortForwarder.exe」をダブルクリックし実行します。以下の画面になるかと思いますので「実行」をクリックします。

portforwarder5

次のようにソフトが起動しますが、ここでは一旦「Exit」ボタンをクリックして終了します。

portforwader6

すると次のようなファイル「PortForwarder.ini」が自動で生成されます。

portforwarder7

ステップ2:初期設定をしよう

ステップ1で自動作成された初期化ファイル「PortForwarder.ini」は、ソフトを起動した時に実行される処理を記述します。簡単に言うと、ソフト起動時に何度も同じ手順を手動で行うのは面倒なので、起動と同時に必要な情報を自動でセットしましょうということです。

それでは実際に初期化ファイルを編集していきましょう。やることはとても簡単です。
まずPortForwarder.iniをメモ帳等で開きます。開いたら以下の記述をコピーしてあなたのファイルに全て上書きしてください。
ただし、「ConfigFolder」のC:以降はご自身の環境に合わせ見なおしてください。

# RecentHost			host
# ConfigFolder path_of_your_config_folder
# ConfigFile name_of_your_config_file
# AutomaticallyHide true/false
RecentHost sakura
ConfigFolder C:\PortForwarder-2.9.0
ConfigFile config.txt
AutomaticallyHide true

初期化ファイルの設定は以上です。

ステップ3:さくらのレンタルサーバのデータベース(MySQL)への接続前準備をしよう

次にさくらのレンタルサーバのデータベース(MySQL)に接続するための事前準備を行います。

まず、config_sample.txtというファイルがありますので、これをコピーして「config.txt」として保存します。
config.txtをメモ帳などで開くと何やらズラズラと書かれていますが、ぜ~んぶ削除しちゃってください。削除したら一度ファイルを保存します。

次に、何も記載されていないまっさらなconfig.txtに以下の記述をコピペします。

Host sakura
HostName xxxxxxx.sakura.ne.jp
User xxxxxxx
LocalForward 3306 xxxxxx.db.sakura.ne.jp:3306

ここで、さくらのレンタルサーバの情報との関係を簡単に説明します。xxxと表記された所にご自身の情報を反映してください。

  • HostName xxxxxxx.sakura.ne.jpの「xxxxxxx.sakura.ne.jp」は、さくらサーバ(SSHサーバ)の「ホスト名」になります。
  • User xxxxxxxの「xxxxxxx」は、さくらサーバ(SSHサーバ)の「FTPアカウント名」になります。
  • LocalForward 3306 xxxxxx.db.sakura.ne.jp:3306の「xxxxxx.db.sakura.ne.jp」はさくらサーバの「データベースサーバ」になります。

上記情報はすべてさくらのレンタルサーバのコントロールパネルから参照できますのでご確認ください。

ステップ4:接続確認

以上で設定は完了しましたので、「PortForwarder.exe」をダブルクリックして起動してみましょう。すると次のウィンドウが立ち上がります。

portforwarder8

続けて「Connect」をクリックすると次のウィンドウが表示されますのでFTPサーバのパスワードを入力してください。

portforwarder9

※初めてSSH接続するときに2つほど確認画面がでるかと思いますので、了承する意味の「はい」や「OK」をクリックしてください。

接続に成功すると右下のタスクトレイにPortForwarderが表示されます。こんな感じです。

portforwarder10

今回はここまでになります。
今の段階で、localhost(自分のPC)のポート番号:3306(MySQLが使用しているデフォルトの番号)にアクセスがあった時、さくらのレンタルサーバのデータベースサーバ(ポート番号:3306)xxxxxx.db.sakura.ne.jpに自動で転送してくれます。一応、SSH接続です。
簡単な図解を作成しましたのでご参考まで。PortForwarderでこの一連の処理を行っています。

portforwarder図解

実際に、データベースに接続するには、データベースのユーザ名とかパスワードを設定または入力する必要がありますので、それについては次回以降にお話します。

ふ~、長かった。

■/■/■/■/■/■/■/■/■/■/■/■/■
【編集後記】
今日は、久々にスタバで作業。
暗くなってきたし帰宅しようかな。

【ぬちぐすい】
沖縄の方言で「命の薬」。
意味の幅は広く、かけがえのないモノ、
人、瞬間に出会えた時に感じる
「ありがとう」の気持ち。

今日はスタバの店員さんの笑顔に
感謝。

【ブログ毎日更新】
EX-ITさんに習い、
毎日更新を始めました。
2015年12月3日から開始
《現在 [blogupdate] 日経過》

■/■/■/■/■/■/■/■/■/■/■/■/■

--

--

KAI
pasocafe

水戸市在住。何事も”IT x 時短 x QOL向上”がキーワード。パソコンの「分からない」を「できた!」に変えるお手伝いをしています。