Bagaimana untuk melaksanakan sambungan jauh dan kawalan akses dalam MySQL?

PHPz
Lepaskan: 2023-07-29 21:10:55
asal
1634 orang telah melayarinya

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
Salin selepas log masuk

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
Salin selepas log masuk

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

sudo service mysql restart
Salin selepas log masuk
  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
Salin selepas log masuk

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';
Salin selepas log masuk

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'@'%';
Salin selepas log masuk

Segarkan semula jadual kebenaran sistem.

FLUSH PRIVILEGES;
Salin selepas log masuk

Keluar dari klien baris arahan MySQL.

EXIT;
Salin selepas log masuk
  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
Salin selepas log masuk

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

sudo ufw allow 3306
Salin selepas log masuk
  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()
Salin selepas log masuk

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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!