4

MySQL サーバーのレプリケーションをセットアップしました。レプリケーション ユーザー/パスワードを使用して、スレーブ マシンからマスター サーバーに接続できます。スレーブ SQL スレッドを実行していますが、スレーブI/Oスレッドが実行されておらず、「スレーブ ステータスの表示」を使用してチェックすると、スレーブ I/O ステータスが空になります。何が問題なのですか?

これを解決するにはどうすればよいですか?スレーブを再起動しても役に立ちません。

これは私の悪い点でした。「レプリケーション スレーブ」権限を に与える代わりに*.*、 にだけ与えていたのですmy_db.*

4

3 に答える 3

5

「レプリケーション スレーブ」権限を . に与える代わりに、my_db.* に対してのみ与えていました。

レプリケーション スレーブは、グローバルな特権 (つまり、ユーザーごとのみ) にすぎません。これは、次のようなコマンドを意味します。

GRANT REPLICATION SLAVE on mydb.* TO 'someuser'@'%';

データベース/列/テーブルごとに付与できないため、効果はありません。

実行する必要があるコマンドは次のとおりです。

GRANT REPLICATION SLAVE on *.* TO 'someuser'@'%';

次に、を行いますSTART SLAVE。また、mysql エラー ログを調べると役立つ場合があります。

このすべてが詳細に説明されているため、レプリケーションのセットアップに関するドキュメントをよく読むことをお勧めします。

于 2009-11-14T12:20:18.127 に答える