[英]Python connecting to MySQL database name error
我从该站点获得以下代码,以通过python连接到mysql数据库(顺便提一下)。 我曾经使用它来连接服务器上的数据库,但使用的是其他文件。 但是我知道要连接到同一服务器上的另一个数据库,但是我不断收到与数据库名称有关的错误消息。 我正在使用与连接之前完全相同的代码,但是我只将数据库名称更改为我要连接的另一个名称。 我可以通过puTTY查看数据库,并看到它被称为正确的名称,并且所有数据都存在,但是似乎无法通过Python正确连接。
在此先感谢您的帮助!
#!/usr/bin/python
import MySQLdb
db = MySQLdb.connect(host="127.0.0.1", # your host, usually localhost
user="root", # your username
passwd="........", # your password
db="opt_out") # name of the data base
# you must create a Cursor object. It will let
# you execute all the query you need
cur = db.cursor()
# Use all the SQL you like
cur.execute("SELECT * FROM opted_in")
# print all the first cell of all the rows
for row in cur.fetchall() :
print row[0]
这是我尝试通过puTTY执行python文件时得到的错误代码:
Traceback (most recent call last):
File "/var/www/html/vra/ConnectAdiDB.py", line 7, in <module>
db="opt_out") # name of the data base
File "/usr/lib64/python2.6/site-packages/MySQLdb/__init__.py", line 81, in Connect
return Connection(*args, **kwargs)
File "/usr/lib64/python2.6/site-packages/MySQLdb/connections.py", line 187, in __init__
super(Connection, self).__init__(*args, **kwargs2)
_mysql_exceptions.OperationalError: (1045, "Access denied for user 'root'@'localhost' (using password: YES)")
密码一定是错误的(我认为是)
因此,尝试重置密码,以便:首先像这样关闭mysql服务
Ubuntu / Debian:
sudo service mysql stop
之后,请执行以下操作:
sudo service mysql start
当完成启动mysql这样的时候:
sudo mysql
执行:
UPDATE mysql.user SET Password=PASSWORD('NEW-PASSWORD') WHERE User='root';
FLUSH PRIVILEGES;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.