web-dev-qa-db-ja.com

非標準のmysql binログパスにselinux権限を設定するにはどうすればよいですか?

デフォルトでは、mysql binログはフォルダー/ var/log/mysqlで機能します。しかし、/ mylogs/mysqlなどの他の共有に移動すると、権限エラーが発生します。

以下は正確なメッセージです:

usr/sbin/mysqld:ファイル '/mylogs/mysql/mysql-bin.index'が見つかりません(エラーコード:13-権限が拒否されました)

selinuxを無効にせずにこれを修正する方法?

以下のリンクにも同様の問題がありますが、SELinuxを無効にできないため、解決策は受け入れられません。 mysql bin-log.index not found

3
PAS

Mysql selinuxをディレクトリに設定するには、次の方法があります。

semanage fcontext -a -t mysqld_db_t "/yourdirectory(/.*)?"

その後

restorecon -Rv /yourdirectory

また、mysqlユーザーがディレクトリに対する権限を持っていることを確認します。

ls -l

必要に応じて権限を設定します。

chown -R mysql:mysql /yourdirectory

3
cormpadre