我尝试安装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
然后我尝试
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都没有特别要求,所以我认为我必须做的很愚蠢。但是我一直无法弄清楚是什么。
答案 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
来设置数据库。