我有一个新的MariaDB安装,没有密码。通过mysql连接对根用户有效,不需要密码,也不需要任何其他参数。
$ sudo -i root
$ mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Server version: 10.2.21-MariaDB-log MariaDB Server但是使用python MySQLdb库连接到套接字失败:
$ python
Python 2.7.5 (default, Sep 12 2018, 05:31:16)
>>> import MySQLdb
>>> MySQLdb.connect(unix_socket='/var/lib/mysql/mysql.sock')
_mysql_exceptions.OperationalError: (1045, "Access denied for user 'root'@'localhost' (using password: NO)")这是MariaDB与MySQL兼容性的问题吗?有人能复制它吗?
发布于 2019-01-19 01:07:26
这不是一个无密码的root帐户。这是一个有默认密码的密码。mysql只需自动从/etc/my.cnf.d/文件夹中读取
[client]
socket = /var/lib/mysql/mysql.sock
host = localhost
user = root
password = ...要调试python CLI行为与mysql MySQLdb行为,您可以运行
mysql --no-defaults它已经为我重现了这个行为,所以我继续:
mysql --no-defaults --socket=/var/lib/mysql/mysql.sock
mysql --no-defaults --socket=/var/lib/mysql/mysql.sock --user=root然后有了深入研究/etc/my.cnf.d/文件夹的想法。
https://stackoverflow.com/questions/54256403
复制相似问题