Ubuntu 20.04设置mysql phpmyadmin根密码

时间:2020-04-25 18:14:09

标签: mysql phpmyadmin passwords root ubuntu-20.04

我在Ubuntu 20.04上安装了LAMP。

(德语) https://wiki.ubuntuusers.de/MySQL/Werkzeuge/

获取root密码登录到localhost / phpmyadmin总是一个问题。在Ubuntu 18.04中,有一个很好的教程(几个):

$(inherited)

在实际的ubuntu版本中,似乎不知道PASSWORD命令。我收到以下错误。

mysql> SERVER BEENDEN: sudo service mysql stop sudo mkdir -p /var/run/mysqld sudo chown mysql:mysql /var/run/mysqld sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking & PRÜFEN MIT: jobs STARTEN von MYSQL: mysql -u root mysql> FLUSH PRIVILEGES; mysql> USE mysql; mysql> UPDATE user SET authentication_string=PASSWORD("NEWPASSWORD") WHERE user='root'; mysql> UPDATE user SET plugin="mysql_native_password" WHERE User='root'; mysql> quit sudo pkill mysqld sudo service mysql start

错误1064(42000):您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册以获取正确的语法,以在第1行的'('YOURNEWPASSWORD')WHERE user ='root'附近使用

我的mysql版本:

用于x86_64((Ubuntu))上的Linux的mysql Ver 8.0.19-0ubuntu5

1 个答案:

答案 0 :(得分:4)

这个难题有几个部分

更改密码

从CLI根目录登录:

sudo mysql -u root -p

然后

ALTER USER 'root'@'localhost' IDENTIFIED BY '<New-Password-Here>';

真正使事情正常工作

From phpmyadmin.net

由于MySQL身份验证方法的变化,7.4之前的PHP版本无法向MySQL 8.0身份验证等等等等 https://bugs.php.net/bug.php?id=76243

有一个解决方法,就是将您的用户帐户设置为使用当前样式的密码哈希方法mysql_native_password。 不幸的是,由于缺乏协调,这种不兼容性影响了所有PHP应用程序,而不仅仅是phpMyAdmin。

所以

UPDATE user SET plugin="mysql_native_password" WHERE user='root';

要真正使事情正常进行...真的

MySQL已更改其安全模型,并且 root登录现在需要sudo 。对于CLI,这是可以的,但这意味着 PhpMyAdmin和所有其他客户端将无法使用根凭据

最好的解决方案是为PhpMyAdmin创建一个新用户(如果在安装过程中已创建,则使用现有用户)并授予其所需的特权。

CREATE USER 'phpmyadmin'@'localhost' IDENTIFIED BY '<New-Password-Here>';
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

在您要“ root” 访问的任何地方使用此用户。


还要确保您使用的是最新版本的PHP。这是我的完整安装脚本

PHP

sudo apt install -y php7.4
sudo apt install php7.4-curl php7.4-gd php7.4-json php7.4-mbstring php7.4-xml

APACHE

sudo apt install apache2 libapache2-mod-php7.4

MYSQL

sudo apt install mysql-server php7.4-mysql
sudo mysql_secure_installation

PHPMYADMIN

sudo apt install phpmyadmin