R(Rstudio)でMySQLデータベースからSQLでデータを取得する方法

この記事は公開から4年以上経過しています。

R(Rstudio)でMySQLサーバーへ接続してSQLでデータを取得する方法の備忘録。

準備

MySQLドライバRMySQLパッケージが未インストールの場合は、以下のコマンドでインストール。

install.packages("RMySQL")

サンプルソースコード

# RMySQLライブラリをロード
library(RMySQL)

# RMySQLドライバをロード
drv <- dbDriver("MySQL")

# MySQLサーバーへ接続
conn <- dbConnect(
  drv,
  host = "DBホスト名(またはIP)",
  port = 3306,
  user = "ユーザー名",
  password = "パスワード",
  dbname = "データベース名"
)

# DBテーブル一覧
dbListTables(conn)

# カラム名一覧
dbListFields(conn, "テーブル名")

# SQLクエリの結果をData.Frameにロード
data <- dbGetQuery(conn, "SQLクエリ")

# 結果の先頭/末尾行を確認
head(data)
tail(data)

# MySQLサーバーから切断
dbDisconnect(conn)

ちなみに、SSHポートフォワーディング(パスワード認証)で接続したい場合は、過去の記事の「番外編」欄が参考になるかもしれません。

※RのSSHクライアントでもポートフォワーディングが可能ですが、少し試してみた限りでは接続待機にてブロッキングしてしまい、こちらが意図する利用が行えないようでしたので、良い方法が見つかれば改めてこちらのページを更新します。

以上です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする