python - sqlacodegen - 无法连接到数据库

标签 python mysql flask-sqlalchemy

我正尝试在我的数据库上使用sqlacodegen

sqlacodegen mysql://root:mypassword@localhost/database_name

但是,我不断收到此错误:

sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)")

但是,在我的 flask 应用程序中,我可以毫无问题地访问这个完全相同的数据库

上面的文件在我的系统上不存在,所以我去 /etc/mysql/my.cnf 并更改了行:

socket      = /var/run/mysqld/mysqld.sock

socket      = /opt/lampp/var/mysql/mysql.sock

不完全确定这样做是否正确。但是即使在进行了此更改之后,系统似乎仍在尝试从原始位置运行。

最佳答案

您可以在 /var/run/mysqld/mysqld.sock 处创建一个指向 lampp 的 mysql sock 的符号链接(symbolic link)。

sudo ln -s /opt/lampp/var/mysql/mysql.sock/ /var/run/mysqld/mysqld.sock

重启lampp的mysql

sudo /opt/lampp/lampp stopmysql
sudo /opt/lampp/lampp startmysql

关于python - sqlacodegen - 无法连接到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30735814/

相关文章:

python - 线程功能后文件路径未保存

java - 通过JSP连接MySQL

Python SQLAlchemy 如何通过排除选定列进行查询

python - 使用多个并行线程分部分下载大文件

python - 使用python在azure函数中进行更新的rest api

python - 将一个 DataFrame 行转换为平面列表

python - 使用云上 Db2(仓库)的凭据来初始化 flask-sqlalchemy

MySQL 'NOT NULL' 错误

c# - 在c#中监控mysql数据库

python - Flask url_for 停止接受两位数的用户 ID。漏洞?