# 付与済みの権限の確認 mysql> show grants for 'user1'@'192.168.4.10'; +--------------------------------------------------------------------------------------------------------------------+ | Grants for user1@192.168.4.10 | +--------------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'user1'@'192.168.4.10' IDENTIFIED BY PASSWORD '*EFCDCAF0F0A39E39459EB2XCFDREWOKSIX1D' | | GRANT ALL PRIVILEGES ON `my_shop_app_development`.* TO 'user1'@'192.168.4.10' | | GRANT ALL PRIVILEGES ON `my_shop_app_production`.* TO 'user1'@'192.168.4.10' | +--------------------------------------------------------------------------------------------------------------------+ 3 rows in set (0.00 sec) # ログインはできるので、新しいデータベースの使用権限を追加 mysql> GRANT ALL PRIVILEGES ON `my_blog_production`.* TO 'user1'@'192.168.4.10'; Query OK, 0 rows affected (0.16 sec) # 追加できた mysql> show grants for 'user1'@'192.168.4.10'; +--------------------------------------------------------------------------------------------------------------------+ | Grants for user1@192.168.4.10 | +--------------------------------------------------------------------------------------------------------------------+ | GRANT USAGE ON *.* TO 'user1'@'192.168.4.10' IDENTIFIED BY PASSWORD '*EFCDCAF0F0A39E39459EB2XCFDREWOKSIX1D' | | GRANT ALL PRIVILEGES ON `my_blog_production`.* TO 'user1'@'192.168.4.10' | | GRANT ALL PRIVILEGES ON `my_shop_app_development`.* TO 'user1'@'192.168.4.10' | | GRANT ALL PRIVILEGES ON `my_shop_app_production`.* TO 'user1'@'192.168.4.10' | +--------------------------------------------------------------------------------------------------------------------+ 4 rows in set (0.00 sec)
2019年1月31日木曜日
MySQL 外部サーバからのアクセス権限追加
2015年1月7日水曜日
【Rails】Parallelで並列処理すると"DEPRECATION WARNING: Database connections will not be closed automatically, please close your database connection at the end of the thread by calling `close` on your connection. For example: ActiveRecord::Base.connection.close" と警告がでる
ループ処理の高速化のためParallelでマルチスレッドにすると、処理後に、「DEPRECATION WARNING: Database connections will not be closed automatically, please close your database connection at the end of the thread by calling `close` on your connection. For example: ActiveRecord::Base.connection.close」という警告がでる。
コネクションを自分で閉じろとな、ふむふむ。言わんとしていることは分かるので、警告に従いclose処理をいれる。
しかし警告は消えない。ホワイ? 結局解決方法はみつからず。しかし何回動かしてもプログラムの動作には
問題ないし、接続先のDBで接続すうを見てみると。
プログラム終了後に接続数はちゃんと減っているので大丈夫なんではないだろうか。
コネクションを自分で閉じろとな、ふむふむ。言わんとしていることは分かるので、警告に従いclose処理をいれる。
Parallel.map_with_index( array, :in_threads=> 4 ) do | data, idx |
begin
# やりたい処理
rescue => ex
Rails.logger.error "エラーです。"
ensure
ActiveRecord::Base.connection.close
end
end
しかし警告は消えない。ホワイ? 結局解決方法はみつからず。しかし何回動かしてもプログラムの動作には
問題ないし、接続先のDBで接続すうを見てみると。
プログラム実行時
mysql> show status like 'Threads_connected';
+-------------------+-------+
| Variable_name | Value |
+-------------------+-------+
| Threads_connected | 24 |
+-------------------+-------+
1 row in set (0.01 sec)
プログラム終了後
mysql> show status like 'Threads_connected';
+-------------------+-------+
| Variable_name | Value |
+-------------------+-------+
| Threads_connected | 14 |
+-------------------+-------+
プログラム終了後に接続数はちゃんと減っているので大丈夫なんではないだろうか。
ラベル:
MySQL,
Ruby on Rails,
マルチスレッド
登録:
投稿 (Atom)