Rumah  >  Artikel  >  pangkalan data  >  Cara Menyediakan Akses Jauh untuk MySQL pada Ubuntu

Cara Menyediakan Akses Jauh untuk MySQL pada Ubuntu

PHPz
PHPzasal
2023-04-20 10:10:472288semak imbas

MySQL ialah sistem pengurusan pangkalan data yang digunakan secara meluas yang boleh diakses secara tempatan atau jauh pada pelayan dan sering digunakan untuk membangunkan aplikasi web. Walau bagaimanapun, kadangkala kami memerlukan akses jauh ke MySQL pada mesin yang berbeza, jadi kami perlu mengkonfigurasi MySQL dengan betul. Dalam artikel ini, kami akan memperkenalkan cara menyediakan akses jauh ke MySQL pada sistem pengendalian Ubuntu 18.04.

Langkah Pertama: Semak sama ada MySQL mempunyai akses jauh didayakan

Sebelum memulakan konfigurasi, kami perlu memastikan MySQL mempunyai akses jauh didayakan. Pertama, kita perlu log masuk ke pelayan MySQL dan lihat jika akses jauh didayakan. Buka terminal dan masukkan arahan berikut:

sudo mysql -u root -p

Arahan ini akan log masuk ke MySQL sebagai pengguna root. Selepas memasukkan arahan ini, anda akan diminta untuk memasukkan kata laluan anda. Jika anda memasukkan kata laluan yang betul, anda akan memasukkan shell MySQL, yang membolehkan anda mengakses antara muka baris arahan pelayan MySQL. Dalam shell MySQL, kita perlu memasukkan arahan berikut untuk melihat sama ada akses jauh didayakan:

SELECT user,authentication_string,host FROM mysql.user;

Jika akses jauh didayakan, anda akan melihat output seperti ini:

+------------------+-------------------------------+-----------+
| user             | authentication_string         | host      |
+------------------+-------------------------------+-----------+
| root             | *E0AAECBBB187B27AAF667AEC86667 | localhost |
| root             | *E0AAECBBB187B27AAF667AEC86667 | %         |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHAT | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHAT | localhost |
| debian-sys-maint | *456D0C7680DF288F66F7401EABC4B | localhost |
+------------------+-------------------------------+-----------+

"%" di sini bermakna MySQL membenarkan akses oleh pengguna pada mana-mana hos. Jika anda melihat output ini, maka MySQL mempunyai akses jauh didayakan.

Jika anda tidak melihat output di atas atau jika anda melihat output yang berbeza daripada di atas, ini bermakna MySQL tidak mempunyai akses jauh didayakan. Dalam kes ini, anda perlu mengkonfigurasi MySQL untuk membenarkan akses jauh.

Langkah 2: Sediakan akaun akses jauh baharu untuk MySQL

Sebelum mendayakan akses jauh, kami perlu mencipta akaun akses jauh baharu untuk MySQL. Sebabnya ialah MySQL hanya membenarkan pengguna root mengakses pelayan secara tempatan secara lalai, dan pengguna lain perlu menggunakan kebenaran terbuka untuk mengakses.

Untuk menyediakan akaun akses jauh baharu, kita perlu melaksanakan arahan berikut dalam shell MySQL:

CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

Arahan ini akan mencipta pengguna baharu bernama "newuser" dan memberikan semua hak akses. "%" bermakna pengguna boleh mengakses pelayan MySQL daripada mana-mana hos. Anda juga boleh menentukan hos yang dibenarkan menggunakan alamat IP atau nama hos tertentu. Sebagai contoh, "newuser"@"10.0.0.2" bermakna akses kepada pelayan MySQL hanya dibenarkan daripada hos dengan alamat IP "10.0.0.2".

Langkah 3: Konfigurasikan firewall untuk membenarkan trafik MySQL

Biasanya, pelayan MySQL mungkin dilindungi oleh firewall. Untuk membolehkan akses jauh ke pelayan MySQL, anda perlu membuka port MySQL pada tembok api (lalai ialah 3306). Untuk melakukan ini, kita perlu memasukkan arahan berikut:

sudo ufw allow 3306/tcp

Perintah ini akan membuka port bernama "3306", membenarkan trafik TCP melalui tembok api. Walau bagaimanapun, sebelum meneruskan langkah ini, anda perlu memastikan bahawa tembok api anda dipasang dan didayakan.

Langkah 4: Kemas kini fail konfigurasi MySQL

Untuk membolehkan log masuk jauh ke pelayan MySQL, anda perlu menetapkannya dalam fail konfigurasi MySQL. Secara lalai, fail konfigurasi MySQL terletak di "/etc/mysql/mysql.conf.d/mysqld.cnf". Anda perlu membuka fail sebagai pentadbir dan mengedit beberapa nilai seperti berikut:

bind-address = 0.0.0.0

Arahan di atas akan membenarkan pelayan MySQL menerima permintaan sambungan daripada mana-mana alamat IP. Ambil perhatian bahawa ini mungkin tidak selamat kerana ia menyebabkan pelayan MySQL terdedah kepada akses tanpa kebenaran. Jika anda ingin menjadikan akses jauh ke MySQL lebih selamat, anda harus menentukan alamat IP atau julat CIDR yang membenarkan akses.

Langkah 5: Mulakan semula pelayan MySQL

Selepas mengubah suai fail konfigurasi MySQL, anda perlu memulakan semula pelayan MySQL untuk perubahan berkuat kuasa. Untuk memulakan semula MySQL, anda boleh menggunakan arahan berikut:

sudo systemctl restart mysql

Jika anda melihat output berikut, ini bermakna pelayan MySQL telah berjaya dimulakan semula:

mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2019-01-21 15:40:22 EST; 17s ago

Pada ketika ini , anda telah berjaya Menyediakan akses jauh ke pelayan MySQL.

Kesimpulan

MySQL ialah sistem pengurusan pangkalan data yang berkuasa yang membolehkan anda mengaksesnya secara tempatan atau jauh pada pelayan. Dalam artikel ini, kami menerangkan cara menyediakan akses jauh ke MySQL pada sistem pengendalian Ubuntu 18.04. Dengan mengikuti langkah di atas, anda boleh melakukan akses jauh MySQL dengan mudah antara mesin yang berbeza. Tetapi sila ambil perhatian bahawa anda perlu memberi perhatian kepada keselamatan dan melindungi pelayan MySQL anda daripada akses yang tidak dibenarkan.

Atas ialah kandungan terperinci Cara Menyediakan Akses Jauh untuk MySQL pada Ubuntu. 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