SQLAlchemy no password supplied error

别等时光非礼了梦想. 提交于 2020-12-24 02:40:05

问题


This is probably a silly error but I cannot seem to find a satisfying solution.

When running db.create_all(), I got the following error.

sqlalchemy.exc.OperationalError: (OperationalError) fe_sendauth: no password supplied  None None

My database link is set as

'postgresql://localhost/db_name'

This worked fine on my Mac and Heroku, but is not OK on ubuntu (digitalocean).

Any ideas what I might be doing wrong?


回答1:


You probably just need to remove "localhost" from your connection string:

'postgresql:///db_name'

That tells psycopg2 to use Unix-domain sockets. Your default configuration will use "ident" so you'll be connecting as the user that runs the script. In the default configuration, "md5" only applies to TCP connections.




回答2:


URL pattern should be:

postgresql://user:password@localhost:5432/database_name

pip install psycopg2
the user should be postgres or any other user you have created and intend to use

similarly for mySql it would be:

mysql://user:pass@localhost:3306/database_name

pip install mysql-python




回答3:


On your Mac, PostgreSQL was set up for trust or peer authentication for connections from localhost.

On your Ubuntu box it's set up for md5 authentication for connections from localhost.

You'll want to configure a password, or change the authentication mode. See pg_hba.conf, and the Ubuntu guide for PostgreSQL (there's a section about this error).




回答4:


Below worked for me. Your connection to your postgres database requires a password; thus, below is what you should write..

pg_user = "magicmike"
pg_pwd = "test123"
pg_port = "5432"
app.config["SQLALCHEMY_DATABASE_URI"] = "postgresql://{username}:{password}@localhost:{port}/foodversity_db".format(username=pg_user, password=pg_pwd, port=pg_port)


来源:https://stackoverflow.com/questions/23839656/sqlalchemy-no-password-supplied-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!