【问题标题】:What is "Connection refused" message for python code?python代码的“连接被拒绝”消息是什么?
【发布时间】:2018-03-31 19:16:13
【问题描述】:

这是我的代码,

import peewee
import sqlite3
import pymysql
import psycopg2

myDB=peewee.MySQLDatabase("new", host="localhost",port=3306, 
user="root", passwd="")
class MySQLModel(peewee.Model):
class Meta:
    database= myDB

class NewPost(MySQLModel):
   id=peewee.PrimaryKeyField()
   width=peewee.CharField()
   height=peewee.CharField()
   pixel=peewee.CharField()
   image=peewee.CharField()

myDB.connect()

if __name__ =='__main__':
     myDB.create_tables([NewPost])

我无法连接到数据库,因为我收到以下错误消息:

peewee.OperationalError: (2003, "Can't connect to MySQL server on on 'localhost' ([Errno 61] 连接被拒绝)")

【问题讨论】:

  • 查看mysql日志,看看连接被拒绝的原因。
  • 尝试127.0.0.1 而不是localhost。见this questionthis question
  • [注意] InnoDB: 5.6.38 开始;日志序列号 11559969 [注意] 未找到 RSA 私钥文件:/Library/Application Support/appsolute/MAMP PRO/db/mysql56//private_key.pem。某些身份验证插件将不起作用。未找到 RSA 公钥文件:/Library/Application Support/appsolute/MAMP PRO/db/mysql56//public_key.pem。某些身份验证插件将不起作用。 [注意] 事件调度程序:加载 0 个事件 [注意] /Applications/MAMP/Library/bin/mysqld:准备连接。版本:'5.6.38' 套接字:'/Applications/MAMP/tmp/mysql/mysql.sock' 端口:0 MySQL 社区服务器(GPL)

标签: mysql python-2.7 peewee


【解决方案1】:

我找到了解决方案。 首先:我将数据库更改为 PostgreSQL 第二:这是我的代码;

import psycopg2
import traceback
try:
con=psycopg2.connect(database="elin",user="elin", 
password="8981",host="127.0.0.1",port="5432")
cur=con.cursor()

cur.execute("""
 CREATE TABLE imageinf(
 img_id INT PRIMARY KEY,
 img_url VARCHAR(50) NOT NULL
 );
 """)

con.commit()
print('Create the table DONE ')
con.close()
except psycopg2.Error as e:
print ('I am unable to connect to db')
print(e)
print(e.pgcode)
print(e.pgerror)
print(traceback.format_exc())

【讨论】:

    猜你喜欢
    • 2017-01-25
    • 2017-12-29
    • 2014-09-02
    • 1970-01-01
    • 2017-08-08
    • 2011-01-20
    • 2018-06-03
    • 1970-01-01
    相关资源
    最近更新 更多