學習python3 MySQL資料庫文法遇到的問題:"Can't connect to MySQL server on 'localhost'

來源:互聯網
上載者:User

標籤:原因   users   遊標對象   資料   bin   topic   packages   turn   idea   

運行學習教程裡面的mysql資料庫按照裡面要的步驟安裝pyMySQL,學習裡面的內容,會出現一些疑問,我也遇到了,發現這是一個認識上錯誤,執行個體如下:

根據基礎教程運行下面代碼,會報錯:

#!/usr/bin/python3import pymysql# 開啟資料庫連接db = pymysql.connect("localhost","test","test","DB" )# 使用 cursor() 方法建立一個遊標對象 cursorcursor = db.cursor()# 使用 execute() 方法執行 SQL 查詢 cursor.execute("SELECT VERSION()")# 使用 fetchone() 方法擷取單條資料.data = cursor.fetchone()print ("Database version : %s " % data)# 關閉資料庫連接db.close()

報錯內容:
Traceback (most recent call last):
  File "C:\Python34\lib\site-packages\pymysql-0.7.10-py3.4.egg\pymysql\connections.py", line 916, in connect
    **kwargs)
  File "C:\Python34\lib\socket.py", line 512, in create_connection
    raise err
  File "C:\Python34\lib\socket.py", line 503, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [WinError 10061] 由於目標電腦積極拒絕,無法串連。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:/Users/*/PycharmProjects/untitled/.idea/mysql.py", line 6, in <module>
    db = pymysql.connect(host="localhost",user="root",password="",db="test_pymysql",port=3306 )
  File "C:\Python34\lib\site-packages\pymysql-0.7.10-py3.4.egg\pymysql\__init__.py", line 90, in Connect
    return Connection(*args, **kwargs)
  File "C:\Python34\lib\site-packages\pymysql-0.7.10-py3.4.egg\pymysql\connections.py", line 706, in __init__
    self.connect()
  File "C:\Python34\lib\site-packages\pymysql-0.7.10-py3.4.egg\pymysql\connections.py", line 963, in connect
    raise exc
pymysql.err.OperationalError: (2003, "Can‘t connect to MySQL server on ‘localhost‘ ([WinError 10061] 由於目標電腦積極拒絕,無法串連。)")

進程已結束,結束代碼1

遇到這個問題,很難受,不知道為什麼會這樣,我專門去查看了各個方面的地方,耗費了2天,例如一些官方API:http://pymysql.readthedocs.io/en/latest/,英文內容,看得不容易,但是沒找到原因,沒看懂,堵住了。
想不通原因,後來尋找資料,網上資料不少,後來看到了一個份資料,很有參考價值,可能你們看完就醒悟了:http://bbs.csdn.net/topics/391931225?page=1
總結一下前因後果:
  1、認識上錯誤:一開始看安裝步驟有安裝pyMySQL,以為是一種資料庫,實際上pymysql不是資料庫,只是python和mysql之間起到橋樑作用,例子裡面提供的帳號密碼一般是沒有作用的,是有前提的
  2、沒有安裝mysql資料庫:有的教程只說了安裝pyMySQL,沒有說要安裝mysql。沒有說安裝,大家不知道安裝,不安裝就報錯了。安裝mysql是學習python的mysql前提。
關於如何安裝mysql,這邊不提供,建議安裝壓縮包版本,需要手動配點東西,不過會比較好用,特別是要卸載mysql時。

學習python3 MySQL資料庫文法遇到的問題:"Can't connect to MySQL server on 'localhost'

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.