首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQLdb:通过socket连接到MariaDB

问MySQLdb:通过socket连接到MariaDB
EN

Stack Overflow用户
提问于 2019-01-18 22:53:31
回答 1查看 386关注 0票数 0

我有一个新的MariaDB安装,没有密码。通过mysql连接对根用户有效,不需要密码,也不需要任何其他参数。

代码语言:javascript
复制
$ 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库连接到套接字失败:

代码语言:javascript
复制
$ 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兼容性的问题吗?有人能复制它吗?

EN

回答 1

Stack Overflow用户

发布于 2019-01-19 01:07:26

这不是一个无密码的root帐户。这是一个有默认密码的密码。mysql只需自动从/etc/my.cnf.d/文件夹中读取

代码语言:javascript
复制
[client]
socket   = /var/lib/mysql/mysql.sock
host     = localhost
user     = root
password = ...

要调试python CLI行为与mysql MySQLdb行为,您可以运行

代码语言:javascript
复制
mysql --no-defaults

它已经为我重现了这个行为,所以我继续:

代码语言:javascript
复制
mysql --no-defaults --socket=/var/lib/mysql/mysql.sock
mysql --no-defaults --socket=/var/lib/mysql/mysql.sock --user=root

然后有了深入研究/etc/my.cnf.d/文件夹的想法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54256403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档