TODOS・何でも情報交換TOPから是非ご覧ください。
一番下の投稿フォームへ > スレッド一覧 > 記事閲覧
Mysql全般
日時: 2013/09/19 10:33
名前: くりくり

Mysqlについてお話をする所です。

私はそんなに詳しくありませんが、
みなさまで情報を出し合えたら幸いです。
メンテ

*TODOS・何でも情報交換・TOP*<スレッドPage> 最新 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |

Re: Mysql全般 ( No.61 )
日時: 2014/07/01 17:22
名前: o6asan

> 環境保管なんちゃらを有効にさせていらっしゃるんでしょうか?

有効にさせてます。

初めは,リレーションが使えるというので,MS Accessの経験から有効にしたんですが,
現在のうちのSQLサーバは,WordPressで使っている程度なので,リレーションは使っていません。

割と使うのは,recent とbook mark くらいですか。
なにしろ,SQL文には疎いので,book mark は便利です。

うちのブログの環境保管領域に関する記載は,全く分かっていないころに書いたかなりいい加減なままなので,
そのうち書き直さなくてはと思いつつ,ほったらかしになっています。
いい機会だから書き直さなくてはネ!!

以下のページを参考にして,同梱のcreate_tables.sqlを使えば,簡単に有効化できます。
https://wiki.phpmyadmin.net/pma/Configuration_storage

create_tables.sql内のユーザ作成はコメントになってるので,しょっぱなでユーザも作る必要が
あるときは,関連行をアンコメントいておかなくてはいけません。それと,うちでは,ユーザ名pmaと
データベース名phpmyadminは,独自のものに加工してあります。

pmaはcontroluserということになっているようで,特権に関してなどは,下記が参考になります。
https://wiki.phpmyadmin.net/pma/control_user
メンテ
Re: Mysql全般 ( No.62 )
日時: 2014/07/02 13:03
名前: o6asan

こんにちは。

本日,またまた,phpMyAdminをのぞいてましたら, >>51 の時点ではサーバがまともだったせいか捕れなかった,
slow_query_logのデータが,あることに気づきました。時間的に,データ復旧を一生懸命やってた頃の時間帯ですね。
記念に,貼っときます。

現在,まりあはlong_query_time = 2 となっていますので,2秒超えが記録されてます。

それと,質問ですが,グローバル変数の参照は,どの程度のユーザ特権を与えればできるんですか。
これが気になった理由は,一番初めのお話がWordPressがらみの話だったからです。
WordPress Codexに則って作られているWordPressの一般ユーザは,グローバル特権がないはずです。

我が家でも,WordPressユーザで phpMyAdmin にログオンして,上記のスローログを確認してみたら,エラーも出ずに,
ないと言われました。

WordPressのユーザに,mysqlデータベースにアクセスできるように特権を与えてやれば,できるようになるのかも
と思いますが,これはこれで,保安上問題でしょうか???
メンテ
Re: Mysql全般 ( No.63 )
日時: 2014/07/02 14:43
名前: くりくり

こんにちは

>それと,質問ですが,グローバル変数の参照は,どの程度のユーザ特権を与えればできるんですか。

ユーザーが、データベース権限とグローバル権限ですが
データベースだけでも参照はできますよ。
たまにmysqlでステータス変数をみるんでwordpressのユーザーでログインします。
当然、setなんかでステータス変数の変更はできませんけどね。

>これはこれで,保安上問題でしょうか???

会社の場合下手に権限あたえると300個以上あるデータベースが消える可能性もありますね。
どこでどうなるかわからないのでphpmyadminも導入しましたがすぐ削除しました。
メンテ
Re: Mysql全般 ( No.64 )
日時: 2014/07/02 15:35
名前: o6asan

> どこでどうなるかわからないのでphpmyadminも導入しましたがすぐ削除しました。

昔からのコンフィグが残っていて,他のユーザの権限がしっかり把握できていない場合,私もそのほうがいいと
感じました。ログイン可能者をくりくりさんだけに限定しておけるならば,便利だとは思います。

> ユーザーが、データベース権限とグローバル権限ですが
> データベースだけでも参照はできますよ。

ああ,なるほど。

うちの場合,WordPressユーザでログインすると, show databases; をやっても,以下の二つしか見えません。
information_schema
wordpressdb

slow_query_log テーブルは mysql データベースにあるので,これに関する参照権限を与えないといけないと
思うのですが,最小限何が必要でしょうか。この辺がはっきりわからないと,業務上の複数ユーザの環境で,
root以外に権限を与えるのは怖いですね。しっかり設定できて,WordPressアカウントでも,使えるようになると
便利になるんですが。
メンテ
Re: Mysql全般 ( No.65 )
日時: 2014/07/02 22:31
名前: o6asan

こんばんは。

MySQLのWordPressユーザに,以下の特権だけ与えてみたら,slow_query_logを,WordPressユーザが
状態モニタで取れるようになりました。

GRANT SELECT (start_time, user_host, query_time, lock_time, rows_sent, rows_examined, db, sql_text) ON mysql.slow_log TO 'wordpress'@'localhost';

mysqlデータベースのslow_logテーブルに対するSELECT権限だけですので,これなら問題ないかと思います。
columnは,もともとモニタで表示されていたものを列挙してあります。

結局のところ,現在の我が家のWordPressユーザの特権は以下のようになりました。
GRANT USAGE ON *.* TO 'wordpress'@'localhost' IDENTIFIED BY 'passphrase';
GRANT ALL PRIVILEGES ON wordpressdb.* TO 'wordpress'@'localhost';
GRANT SELECT (start_time, user_host, query_time, lock_time, rows_sent, rows_examined, db, sql_text) ON mysql.slow_log TO 'wordpress'@'localhost';
メンテ
Re: Mysql全般 ( No.66 )
日時: 2014/07/03 10:38
名前: くりくり

おはようございます。

SELECT権限だけを与えてslow_logを参照できるようにしたんですか
一般ユーザーとはまたちがいますけど、これはデータベースを使って開発してる肩に役立ちそうですね。

他にいい方法あるかもしれないけど、
サーバーでphpやってるとphpのエラーログと編集用とデータベース用
の同じターミナルソフト3つウィンドウで開かないといけないしどれがどれだかわからなくなるんですよ。

データベースはphpmyadminなんてやっておけばやりやすくなる。
メンテ
Re: Mysql全般 ( No.67 )
日時: 2015/06/10 08:43
名前: くりくり

おはようございます。

no24に書いたエラーですが一年ぶりに解決しました。
https://www.superweibu.com/archives/7415.html

ありがとうございました。
メンテ
Re: Mysql全般 ( No.68 )
日時: 2015/06/11 15:23
名前: o6asan

>>24 の件,
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/5/html/Deployment_Guide/ch-Migrating_from_MySQL_5.0_to_MySQL_5.5.html#sec-upgrading_to_MySQL55

The only supported way to upgrade from MySQL 5.0 to MySQL 5.5 is by using MySQL 5.1 as an intermediate step
がらみだったんですか。

お疲れさまでした&おめでとうございます。
メンテ
Re: Mysql全般 ( No.69 )
日時: 2015/06/12 06:10
名前: りり

ザッとみてよく分からないのですが、本来、MySQL 5.5にするには、MySQL 5.0を MySQL 5.1 にしてから行うので、新規インストールでもエラーが出たということ???

それをMySQL 5.1 を使わずに、
# scl enable mysql55 ‘mysqlcheck -optimize -u root -p -all-databases’
で解決した…という解釈で良いのでしょうか?
メンテ
Re: Mysql全般 ( No.70 )
日時: 2015/06/12 08:47
名前: くりくり

おはようございます。

>o6asanさん
ありがとうございます。

>りりさん

CentOS5のmysql5.5(普通の人はサードパーティを使う)なんか使う人はかなりレアなので参考になら
ないとおもいますが、redhatによるとmysql5.0からmysql5.5にする場合はmysql5.1を経由してからの
バージョンアップになります(エラーかなんかのため)そして、5.1を使わないよう呼びかけています。
そこで5.5にしたんですが、
しかし、mysqlcheck -optimize -u root -p -all-databasesを実行するとエラーが出たのでここに書き込みました。

そしてno25でo6asanさんがご指摘されてるのですが古いmysql5.0と5.1のパッケージが残ってるので
エラーがでたんじゃないかなとそこで最初からmysql5.5をインストールして検証してみた次第です。
結局、エラーがでたので古いパッケージが原因ではなかった。aclというコマンドだったという次第です。

>サードパーティを使う人は
あんまりこのエラーに遭遇しないのじゃないかな。

mysqldumpもこれで使えますから2017年にまたお引越ししますからこれで多少楽になるでしょう。
メンテ

*TODOS・何でも情報交換・TOP*<スレッドPage> 最新 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |

楽しい交流と情報交換のTODOS・アップローダーも用意。ぜひTOPからもご覧ください。
ご参考になりましたら、お気軽に一筆お書き込みくださいませ。
題名 スレッドをトップへソート
名前
画像添付
JPEG
GIF
PNG



参照ボタンを押して、PCの画像を指定ください。3枚まで指定できます。縮小画像はクリックで拡大されます。
パスワード (好きなパスワードを。投稿後、右下のスパナマークをクリックし、そのパスワードを入れて修正できます。)
コメント

   クッキー保存
スレッドTOPへ***スレッド一覧