如何安装mysql以非根用户身份运行

时间:2019-09-02 22:29:49

标签: mysql ubuntu linux-mint

我尝试安装mysql,然后与之一起运行

mysql -u root -p

但我知道

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

我可以使用sudo,但是我不想以root身份运行。如何以非root用户身份运行mysql?

我正在使用32位Linux Mint 19.1。

我尝试过的事情:

sudo apt-get install mysql-client
sudo apt-get install mysql-server

sudo /etc/init.d/mysql restart
sudo mysql_secure_installation
  • 设置验证密码?不
  • 删除匿名用户?不
  • 禁止远程root登录?是的
  • 要删除测试数据库并访问它吗?不
  • 现在重新加载特权表?是的

然后我尝试

mysql -u root -p

它要求输入密码,我输入的密码与我在mysql_secure_installation中输入的密码相同...

frank@frank-laptop:~/WebDev$ mysql -u root -p
Enter password: 
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

加。

我现在已经重新安装了mysql客户端和服务器几次,在要求时之间进行了完全卸载并删除了所有数据库。在安装过程中,不会提示我输入root密码。对于在Ubuntu及其衍生版本中的安装来说,这似乎是正常的,因此可以使用mysql_secure_installation来设置密码。

我尝试了以下 http://www.yolinux.com/TUTORIALS/LinuxTutorialMySQL.html 我尝试在网上搜索提示,例如 https://askubuntu.com/questions/766900/mysql-doesnt-ask-for-root-password-when-installing#766908 和其他人,但我一直无法在没有sudo的情况下启动mysql。如果我确实使用sudo,则可以创建数据库,添加表和添加数据以便安装数据库,我只需要比我认为需要的特权即可运行它。

在任何地方,指令从安装到启动mysql都没有特别要求,所以我认为我必须做的很愚蠢。但是我一直无法弄清楚是什么。

1 个答案:

答案 0 :(得分:2)

第一次运行mysql -u root -p时,必须使用sudo运行它才能创建新用户:

DROP USER 'root'@'localhost';
CREATE USER 'XXX'@'%' IDENTIFIED BY 'YYY';
GRANT ALL PRIVILEGES ON *.* TO 'XXX'@'%' WITH GRANT OPTION;

然后,您可以使用mysql --user=XXX --password=YYY

连接自己

我已经尝试过,但是我认为您可以不用不幸地使用sudo来设置数据库。