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/