我正在使用ubuntu 10.10,在犯了安装LAMP的错误之后(无法用它连接到数据库),我来到这里看看使用apt-get install python-mysqldb是多么重要。删除LAMP,使用apt-get重新安装,现在尝试运行基本的server_version.py脚本时出现同样的错误。
脚本是在这里找到的server_version.py:http://www.kitebird.com/articles/pydbapi.html
我的server_version.py脚本:
# server_version.py - retrieve and display database server version
import MySQLdb
# I have also tried setting host = 'localhost'
conn = MySQLdb.connect (host = "/opt/lampp/var/mysql/mysql.sock",
user = "root",
passwd = "myrealpass",
db = "testdb1")
cursor = conn.cursor ()
cursor.execute ("SELECT VERSION()")
row = cursor.fetchone ()
print "server version:", row[0]
cursor.close ()
conn.close ()
错误是:
追踪(最近一次通话): 文件“server_version.py”,第10行,in db =“testdb1”)
文件“/usr/lib/pymodules/python2.6/MySQLdb/init.py”,第81行,在Connect中 return Connection(* args,** kwargs)
文件“/usr/lib/pymodules/python2.6/MySQLdb/connections.py”,第129行, init 来自转换器导入转换
文件“/usr/lib/pymodules/python2.6/MySQLdb/converters.py”,第165行, 来自十进制导入十进制
文件“/usr/lib/python2.6/decimal.py”,第137行,in 导入副本为_copy
文件“/home/browning/copy.py”,第4行,
ValueError:解包需要多于1个值
这里只是试图获得一些使用python数据库的基本经验,所以如果有更好的选择,我就不会设置MySQL。我试图使用apt-get和pip多次重新安装mysqldb。
答案 0 :(得分:3)
看起来你有一个名为copy.py
的文件而不是Python标准库模块copy
。重命名或删除您的文件(如果已创建,则为copy.pyc
)。或者从不同的目录运行。