ヤマムギ

growing hard days.

*

Oracle SQL DeveloperでMySQLに接続して接続の文字コードでUTF-8を指定する

   

MySQL WorkbenchがMacでクエリー1回送信するレベルで落ちまくるので、使い慣れたOracle SQL Developerを使う事にしました。
文字コードで嵌ったというか情報を見つける事が出来ず、きっと公式ではないだろうやり方で出来たので記しておきます。

Oracle SQL Developerのインストール

公式サイトでダウンロードします。

oracle-sqldeveloper-download

ダウンロードが終われば解凍してApplicationとかに置いておきます。

JDK8がなければ同じページからついでにダウンロードしてインストールしておきます。
(SQLDeveloper. Service exited with abnormal code: 1とかで落ちてる場合はJavaのバージョンがあってないです。多分。)

MySQL JDBC Connectorのダウンロード

こちらも公式サイトからダウロードして解凍して任意のディレクトリに格納します。

Oracle SQL Developerでの設定

[Oracle SQL Developer]-[Preferences]-[データベース]-[サードパーティーJDBCドライバ]でMySQL JDBC Connectorのjarを指定します。

PREFERENCES

これでデータベースの接続に[MySQL]タブが増えました。

databaseconnect

接続を作ります。

connect2

今回はAWSのRDSに接続してみます。
※セキュリティグループで3306ポートとかは自IPで開けておきます。

Oracle_SQL_Developer___test

データベースのアイコンにイルカがいます。
なんか嬉しいです。

日本語対応する

でもこのままだと日本語が使えません。
selectの結果とかで表示する事は出来ますが、クエリーで使ったり、insertやupdateする時に文字として送れません。

「select ‘あいう’ from dual;」とか送信すると下図のようになります。

sql-query

文字コードの問題なのでJDBC URIにcharacterEncoding=utf8パラメータをつければ解決しそうなのですが、それをOracle SQL Developerで設定する場所がまったくわかりませんでした。

試して出来たやり方は以下です。

[接続のエクスポート]で設定をエクスポートします。

エクスポートして出来たXMLの以下の箇所を追記します。

これを、こんな感じで。
インスタンス名、データベース名はそれぞれの環境で。

[接続のインポート]で置き換えで戻します。

connect-test-after

無理やり入れたパラメータが[データベースの選択]フィールドに入っています。

これで先程の「select ‘あいう’ from dual;」を送信すると、

test-success

出来た!


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - Database , ,

ad

ad

  関連記事

VirtualBoxでCentOS7+Oracle12c環境を構築するの3(データベース作成)

Oralceのインストールはこちら「VirtualBoxでCentOS7+Ora …

Oracle SQL Developer でConnections(接続)が表示されなくなった

まれにOracle SQL DeveloperのConnect(接続)が表示され …

Oracle 12c インスタンスを起動してユーザーとテーブルを作成する

環境 Mac上のVirtualBox CentOS 7 Oracle 12c イ …

RDS for MySQL slow.log破損そして修復

AWSのRDS for MySQLでは、パラメータグループでslow_query …

MySQL 5.7でload data local infileでバックスラッシュ(\)を含むフィールドでエラー

バックスラッシュ(\)を含むフィールドがあるレコードをload data …