Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk melaksanakan sambungan jauh dan kawalan akses dalam MySQL?

Bagaimana untuk melaksanakan sambungan jauh dan kawalan akses dalam MySQL?

PHPz
PHPzasal
2023-07-29 21:10:551639semak imbas

MySQL ialah sistem pengurusan pangkalan data perhubungan yang biasa digunakan Untuk meningkatkan kecekapan dan kemudahan, kami selalunya perlu menyambung dan mengakses MySQL dari jauh dalam persekitaran yang berbeza. Artikel ini akan memperkenalkan cara melakukan sambungan jauh dan kawalan akses dalam MySQL dan memberikan contoh kod yang sepadan.

  1. Ubah suai fail konfigurasi MySQL

Pertama, kita perlu mengubah suai fail konfigurasi MySQL untuk membenarkan sambungan jauh. Cari fail my.cnf dalam direktori pemasangan MySQL dan buka dengan editor teks.

sudo nano /etc/mysql/my.cnf

Cari atribut bind-address dalam fail, ulaskannya atau tukar nilainya kepada 0.0.0.0. Dengan cara ini, pelayan MySQL akan menerima sambungan jauh dari mana-mana alamat IP.

#bind-address = 127.0.0.1

Simpan dan tutup fail, kemudian mulakan semula perkhidmatan MySQL untuk perubahan berkuat kuasa.

sudo service mysql restart
  1. Berikan kebenaran akses jauh

Seterusnya, kita perlu mencipta pengguna dalam MySQL yang membenarkan akses jauh dan memberikannya kebenaran yang sepadan. Buka klien baris arahan MySQL.

mysql -u root -p

Masukkan kata laluan MySQL super user root dan masukkan antara muka baris arahan MySQL.

Buat pengguna baharu dan tetapkan kata laluan.

CREATE USER 'remote_user'@'%' IDENTIFIED BY 'password';

Di mana, 'pengguna_jauh' ialah nama pengguna pengguna baharu, 'kata laluan' ialah kata laluan dan % bermaksud membenarkan sambungan daripada mana-mana alamat IP. Jika anda hanya mahu membenarkan sambungan daripada alamat IP tertentu, anda boleh menggantikan % dengan alamat IP tertentu.

Beri pengguna ini akses kepada semua pangkalan data.

GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%';

Segarkan semula jadual kebenaran sistem.

FLUSH PRIVILEGES;

Keluar dari klien baris arahan MySQL.

EXIT;
  1. Konfigurasikan firewall

Jika anda mempunyai firewall yang didayakan pada pelayan anda, anda perlu memastikan bahawa port lalai untuk MySQL (biasanya 3306) dibuka. Anda boleh menggunakan arahan berikut untuk melihat peraturan firewall semasa.

sudo ufw status

Jika port lalai MySQL tidak dibuka, anda boleh menggunakan arahan berikut untuk membuka port.

sudo ufw allow 3306
  1. Sambung dari jauh

Kini, kita boleh menggunakan contoh kod berikut untuk menyambung ke pangkalan data dari jauh.

import mysql.connector

config = {
  'user': 'remote_user',
  'password': 'password',
  'host': 'your_server_ip',
  'database': 'your_database',
  'raise_on_warnings': True
}

cnx = mysql.connector.connect(**config)
cursor = cnx.cursor()

# 这里可以编写具体的数据库操作代码

cursor.close()
cnx.close()

Dalam kod, anda perlu menggantikan 'pengguna_jauh' dengan nama pengguna pengguna jauh yang dibuat sebelum ini dan 'kata laluan' dengan kata laluan yang sepadan. 'your_server_ip' dan 'your_database' digantikan dengan alamat IP pelayan MySQL jauh dan nama pangkalan data yang akan disambungkan mengikut situasi sebenar.

Dengan langkah dan contoh kod di atas, kami boleh melaksanakan sambungan jauh dan kawalan akses dalam MySQL. Dengan cara ini, kami boleh mengendalikan pangkalan data MySQL dengan mudah dalam persekitaran yang berbeza dan meningkatkan kecekapan kerja.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan sambungan jauh dan kawalan akses dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn