Sqlalchemy exc operationalerror pymysql err operationalerror 2003 tidak dapat terhubung ke server mysql

n5fPosts. 82 Bergabung. Rabu 12 Agustus 2020 7. 49 sore

Hai,

skrip python ini

Kode.

from sqlalchemy import create_engine
import pymysql
import pandas as pd

import pymysql.cursors

connection = pymysql.connect(host='192.168.X.X',
                             user='USERNAME',
                             password='PASSWORD',
                             db='Test'
                             )

df = pd.read_sql('SELECT * FROM *', con=connection)

menyebabkan kesalahan pada pi nol saya

Kode.

Traceback (most recent call last):

  File "/home/n5f/.local/lib/python3.8/site-packages/pymysql/connections.py", line 613, in connect
    sock = socket.create_connection(

  File "/usr/lib/python3.8/socket.py", line 808, in create_connection
    raise err

  File "/usr/lib/python3.8/socket.py", line 796, in create_connection
    sock.connect(sa)

ConnectionRefusedError: [Errno 111] Connection refused


During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "", line 1, in 
    runfile('/home/n5f/test_script.py', wdir='/home/n5f')

  File "/usr/lib/python3/dist-packages/spyder_kernels/customize/spydercustomize.py", line 827, in runfile
    execfile(filename, namespace)

  File "/usr/lib/python3/dist-packages/spyder_kernels/customize/spydercustomize.py", line 110, in execfile
    exec(compile(f.read(), filename, 'exec'), namespace)

  File "/home/n5f/test_script.py", line 12, in 
    connection = pymysql.connect(host='192.168.X.X',

  File "/home/n5f/.local/lib/python3.8/site-packages/pymysql/connections.py", line 353, in __init__
    self.connect()

  File "/home/n5f/.local/lib/python3.8/site-packages/pymysql/connections.py", line 664, in connect
    raise exc

OperationalError: (2003, "Can't connect to MySQL server on '192.168.X.X' ([Errno 111] Connection refused)")
_


Ada solusi di utas lain

tulis DougieLawson.

Kamis 15 Des 2016 2. 59 sore

Sudahkah Anda mengubah alamat bind di /etc/mysql/my. cnf dari 127. 0. 0. 1 ke 0. 0. 0. 0?


Tapi di saya. file cnf tidak ada alamat bind

Kode.

cat /etc/mysql/my.cnf
# The MariaDB configuration file
#
# The MariaDB/MySQL tools read configuration files in the following order:
# 1. "/etc/mysql/mariadb.cnf" (this file) to set global defaults,
# 2. "/etc/mysql/conf.d/*.cnf" to set global options.
# 3. "/etc/mysql/mariadb.conf.d/*.cnf" to set MariaDB-only options.
# 4. "~/.my.cnf" to set user-specific options.
#
# If the same option is defined multiple times, the last one will apply.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.

#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]

# Import all .cnf files from configuration directory
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mariadb.conf.d/

Setelah selesai menginstal aplikasi server MySQL di sistem operasi Windows, Anda dapat mencoba login ke server MySQL Anda dengan menggunakan perintah mysql dari Command Line

Tapi kadang-kadang Anda mungkin mendapatkan kesalahan MySQL 2003 mengatakan itu tidak dapat terhubung ke server MySQL seperti yang ditunjukkan di bawah ini

mysql --user=[your username] --password=[your password]
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (10061)

Kesalahan di atas berarti permintaan Anda untuk terhubung ke server MySQL telah ditolak

Ada dua hal yang perlu Anda periksa untuk memperbaiki kesalahan ini

  • Pastikan layanan MySQL Anda benar-benar berjalan
  • Periksa apakah Anda mencoba menyambung ke nomor port yang benar

Tutorial ini akan membantu Anda melakukan keduanya, dimulai dengan memeriksa status layanan MySQL

Pastikan layanan MySQL Anda benar-benar berjalan

Untuk memperbaiki kesalahan ini, Anda perlu memastikan bahwa layanan server MySQL Anda benar-benar berjalan di panel Services

Pertama, buka menu Start Windows dan cari panel Services untuk melihat hasilnya di bawah ini

Opening Services panel on WindowsMembuka panel Layanan di Windows

Kemudian, telusuri daftar layanan hingga Anda mencapai layanan yang dimulai dengan "M" untuk mencari layanan MySQL

Biasanya, Anda memiliki nomor versi MySQL yang dilampirkan pada nama layanan

Versi MySQL yang diinstal di komputer saya adalah MySQL

mysqld --install
Service successfully installed.
0 jadi saya memiliki layanan
mysqld --install
Service successfully installed.
1 yang terdaftar seperti yang ditunjukkan di bawah ini

Looking for MySQL in the Services panelMencari MySQL di panel Layanan

Jika Anda memiliki MySQL versi 7, Anda mungkin memiliki

mysqld --install
Service successfully installed.
2 terdaftar di panel Layanan

Seperti yang Anda lihat dari gambar di atas, status layanan

mysqld --install
Service successfully installed.
1 kosong, artinya tidak sedang berjalan

Jika Anda melihat status yang sama, Anda dapat menjalankan layanan dengan mengeklik tautan

mysqld --install
Service successfully installed.
4 layanan di panel kiri

Sekarang Anda dapat mencoba menghubungkan lagi ke server MySQL Anda dari Command Line

Layanan MySQL hilang dari panel Layanan

Jika Anda tidak menemukan layanan MySQL dari panel Layanan, Anda mungkin belum menginstal MySQL sebagai layanan Windows

Itu selalu disarankan untuk menginstal MySQL sebagai layanan Windows sehingga Anda dapat memulai dan menghentikan program MySQL yang sedang berjalan dengan mudah

Untuk menginstal layanan MySQL, Anda dapat menjalankan perintah

mysqld --install
Service successfully installed.
5 dari baris perintah sebagai berikut

mysqld --install
Service successfully installed.
_

Harap dicatat bahwa Anda harus memiliki akses Administrator untuk melakukan instalasi di atas

Atau, Anda dapat menjalankan kembali program penginstal MySQL dan memilih untuk mengkonfigurasi ulang server MySQL yang diinstal seperti yang ditunjukkan di bawah ini

Reconfigure your MySQL server settingKonfigurasi ulang pengaturan server MySQL Anda

Di panel wisaya konfigurasi ulang, klik Berikutnya hingga Anda masuk ke bagian Layanan Windows

Anda harus mencentang kotak yang bertuliskan

mysqld --install
Service successfully installed.
_6 sebagai berikut

Create a MySQL service and set the service name hereBuat layanan MySQL dan atur nama layanan di sini

Setelah selesai, klik Next dan kemudian klik Execute untuk menjalankan perubahan

Sekarang Anda seharusnya dapat menemukan MySQL di bawah panel Services

Periksa apakah Anda mencoba menyambung ke nomor port yang benar

Ketika Anda menjalankan layanan MySQL di komputer Anda, layanan tersebut akan memulai server MySQL dan memungkinkan Anda untuk terhubung ke server dengan nomor

mysqld --install
Service successfully installed.
8 tertentu

Secara default MySQL menggunakan port

mysqld --install
Service successfully installed.
_9 tetapi Anda dapat memeriksa yang sedang Anda gunakan di file
[client]

# pipe=

# socket=MYSQL

port=3306

[mysql]
no-beep
0 Anda

File

[client]

# pipe=

# socket=MYSQL

port=3306

[mysql]
no-beep
_0 adalah file konfigurasi MySQL yang digunakan untuk mengonfigurasi layanan MySQL yang berjalan dengan benar

Ketika Anda menginstal MySQL menggunakan penginstal resmi, maka Anda harus memiliki file

[client]

# pipe=

# socket=MYSQL

port=3306

[mysql]
no-beep
0 yang terletak di bawah folder instalasi MySQL Anda

Misalnya, milik saya terletak di bawah

[client]

# pipe=

# socket=MYSQL

port=3306

[mysql]
no-beep
_3 folder seperti yang ditunjukkan di bawah ini

The default my.ini file on Windowsdefault saya. file ini di Windows

Setelah Anda menemukan file tersebut, buka dan temukan bagian

[client]

# pipe=

# socket=MYSQL

port=3306

[mysql]
no-beep
4

Anda harus menemukan nomor

mysqld --install
Service successfully installed.
_8 yang ditetapkan di bawah bagian seperti yang ditunjukkan di bawah ini

[client]

# pipe=

# socket=MYSQL

port=3306

[mysql]
no-beep

Setelah Anda menemukan nomor port, dan nomor ke mysql perintah ketika Anda mencoba untuk login sebagai berikut

Bagaimana cara saya terhubung ke Pymysql?

Melalui Terminal — dengan menjalankan perintah berikut di terminal IDE PyCharm Anda. .
pip instal pymysql
impor pymysql. # koneksi basis data. .
koneksi = pymysql. terhubung(Host="127. 0. 0. 1", port=3306, pengguna="root", passwd="", database="SELECTION_DB")
impor mysql. penyambung

Bagaimana cara memeriksa apakah MySQL dapat dijangkau di port 3306?

Cara yang benar adalah menggunakan. sudo lsof -i. 3306 .

Mengapa database MySQL tidak terhubung?

biasanya berarti tidak ada server MySQL yang berjalan di sistem atau Anda menggunakan nama file soket Unix atau nomor port TCP/IP yang salah when trying to connect to the server. You should also check that the TCP/IP port you are using has not been blocked by a firewall or port blocking service.

Apa itu MySQL Pymysql?

PyMySQL adalah antarmuka untuk menghubungkan ke server database MySQL dari Python . Ini mengimplementasikan Python Database API v2. 0 dan berisi pustaka klien MySQL Python murni. Tujuan dari PyMySQL adalah menjadi pengganti drop-in untuk MySQLdb.