web-dev-qa-db-ja.com

mysql:認識されないサービス(apparmor)

Mysqlが機能していたので、MySqlデータベースディレクトリを この質問では として移動しようとしましたが、これはすでに何度か正常に使用されていますが、今回は何かが間違っていてエラーが発生しました:

$ mysql  
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

そのため、主に次のコマンドを使用してmysqlを再インストールしました(このエラーが何度も発生するため)。

# ** uninstall:
Sudo su
rm -r /var/lib/mysql # delete the database
aptitude remove mysql-server mysql-client mysql-common
apt-get autoremove
apt-get autoclean

# ** reinstall
apt-get install mysql-server mysql-client mysql-common
apt-get update

ディスクがいっぱいではありません。問題は、ある時点で何らかの形で/etc/apparmor.d/usr.sbin.mysqldが削除され、以前の問題と、

$ service mysql status
mysql: unrecognized service

ディスクがいっぱいではなく、mysqlを再インストールしてもファイルは追加されません。 @AbrahamVanHelpsingのおかげで、ソースからファイルを取得しましたが、問題は解決しません。何か案は?

ありがとう

編集

aa-statusはmysqlについて言及していませんでしたが、欠落していたファイルを置くようになりました。

別の編集

別の端末からSudo mysqldを実行してからmysqlを実行することでmysqlにアクセスできますが、まだmysqlをapparmorに登録したいと考えています。

1
ecoologic

新しいMySQLロケーションをapparmorエイリアスに追加する必要があります。

追加するには、単に入力します

Sudo nano /etc/apparmor.d/tunables/alias

そして、これをファイルの最後に追加します

/your/new/data/dir -> /var/lib/mysql

注:ファイルにubuntu buit-inマニュアルが表示される場合があります

そしてタイプ

Sudo invoke-rc.d apparmor reload

その後、動作するはずです

またはより簡単なソリューション

AppAmorを削除

Sudo apt-get purge apparmor
0
Arch user

Mysqlを使用するだけの場合は、Dockerコンテナを使用できます。隔離されたままになります。

url:-https://hub.docker.com/r/mysql/mysql-server/

0