2017-07-07 56 views
3

MySQL 5.7.18にキーリングプラグインをインストールしようとしていました。mysql keyringプラグインをインストールする

my.iniファイルを編集しました。それは空白だったので、次のテキストを追加してMySQLを再起動しました。

[mysqld] 
early-plugin-load=keyring_file.dll 

次のコマンドを実行してプラグインをインストールしました。

mysql> install plugin keyring_file soname 'keyring_file.dll'; 

私はその後、確認するには、次のSQLを実行しました:

mysql> SELECT PLUGIN_NAME, PLUGIN_STATUS 
    ->  FROM INFORMATION_SCHEMA.PLUGINS 
    ->  WHERE PLUGIN_NAME LIKE 'keyring%'; 
+--------------+---------------+ 
| PLUGIN_NAME | PLUGIN_STATUS | 
+--------------+---------------+ 
| keyring_file | ACTIVE  | 
+--------------+---------------+ 
1 row in set (0.00 sec) 

をしかし、私は暗号化を使用するようにテーブルを変更しようとしたとき、私はエラーを得ました。

mysql> ALTER TABLE t1 ENCRYPTION='Y'; 
ERROR 3185 (HY000): Can't find master key from keyring, please check keyring 
plugin is loaded. 

私はどこかのステップを逃しましたか?

答えて

4

ハリエットは、次の操作を行います

  • MySQLサービス(例えば、ネットワークサービス)として実行されることをユーザーに確認
  • Cでkeyringフォルダを作成します:/プログラムファイル/ MySQLの/ MySQLサーバ5.7
  • 明示的にkeyring_fileを使用した場合、キーリングファイルはCに格納されているWindows上のデフォルトキーリングフォルダ

上のMySQLサービスのユーザー権限を付与します:/プログラムファイルs/MySQL/MySQL Server 5.7/keyring/keyring(プラグインをインストールして説明したようにロードを確認した後、SHOW VARIABLES LIKE 'keyring%'を実行することでこれを判断しました)

C:/ Program Files/MySQL/MySQL Server 5.7でキーリングフォルダを作成した後、右クリックし、プロパティ - >セキュリティ - >追加 - などを追加します。 Read &を実行し、フォルダの内容を一覧表示し、読み書きします。

その後、MySQLサービスを再起動すると、エラーなしで暗号化されたテーブルを作成できるようになります。

注:セキュリティ上の理由から、キーリングフォルダ(たとえば、ローカルマシンのユーザー)にアクセスする必要がないと思われるすべてのユーザー/グループを元に戻して削除する必要があります。 Unixではthe docsは、mysqlユーザとグループだけがフォルダにアクセスできることを推奨しています。

+0

ありがとうございました。これは、鍵リングフォルダに対する許可を与えた後に機能しました。 –

+0

それは素晴らしいです!私の答えがあなたのために働いて以来、あなたは正しい答えとして「受け入れる」ことができますか? – Chirael

関連する問題