编辑

编辑

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,但我仍然希望在 apparmor 中注册 mysql

答案1

您需要将新的 MySQL 位置添加到 apparmor 别名。

要添加它,只需输入

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

并将其添加到文件末尾

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

注意:你可以在文件中看到 ubuntu 内置手册

并输入

sudo invoke-rc.d apparmor reload

那么它应该可以工作

或者更简单的解决方案

删除 AppAmor

sudo apt-get purge apparmor

答案2

如果您只想使用 mysql,那么您可以使用 docker 容器。它将保持隔离。

网址:-https://hub.docker.com/r/mysql/mysql-server/

相关内容