Masalah Menyambung ke MySQL dengan PyMySQL pada Localhost
Apabila cuba mewujudkan sambungan ke MySQL pada localhost menggunakan PyMySQL:
<code class="python">import pymysql conn = pymysql.connect(db='base', user='root', passwd='pwd', host='localhost')</code>
Seseorang mungkin menghadapi ralat berikut:
socket.error: [Errno 111] Connection refused pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (111)")
Masalah ini berterusan merentas kedua-dua Python 2.7 dan Python 3.2, walaupun MySQL berjalan seperti yang disahkan oleh sambungan yang berjaya melalui arahan mysql atau phpMyAdmin. Selain itu, coretan kod yang hampir sama berfungsi menggunakan MySQLdb dalam Python 2.
Potensi Penyelesaian
Dua kemungkinan penjelasan untuk isu ini:
<code class="python">pymysql.connect(db='base', user='root', passwd='pwd', unix_socket="/tmp/mysql.sock")</code>
<code class="python">pymysql.connect(db='base', user='root', passwd='pwd', host='localhost', port=XXXX)</code>
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menyambung ke MySQL pada Localhost dengan PyMySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!