Mewujudkan sambungan jauh yang selamat ke pelayan MySQL
Jul 04, 2025 am 01:44 AMUntuk menyambung dengan selamat ke pelayan MySQL jauh, gunakan terowong SSH, konfigurasikan MySQL untuk akses jauh, tetapkan peraturan firewall, dan pertimbangkan penyulitan SSL. Pertama, buatkan terowong SSH dengan SSH -L 3307: Localhost: 3306 User@Remote -Server -N dan Sambung melalui MySQL -H 127.0.0.1 -P 3307. Ketiga, memberikan akses jauh menggunakan pemberian keistimewaan pada pangkalan data.* Kepada 'Pengguna'@'Your-Local-IP', dan mengehadkan akses melalui alat firewall seperti UFW dengan sudo ufw membenarkan dari setempat anda ke mana-mana port 3306.
Menyambung ke pelayan MySQL dengan selamat dari lokasi terpencil adalah keperluan yang sama, terutamanya apabila menguruskan pangkalan data untuk aplikasi web atau perkhidmatan awan. Kuncinya bukan sekadar membuat kerja sambungan - ia memastikan ia berfungsi dengan selamat tanpa mendedahkan data atau sistem anda kepada risiko yang tidak perlu.

Berikut adalah beberapa langkah praktikal dan pertimbangan untuk membantu anda menyediakan akses jauh selamat ke pelayan MySQL.

Gunakan terowong SSH untuk akses yang selamat
Salah satu cara yang paling boleh dipercayai untuk menyambung dari MySQL adalah melalui terowong SSH. Kaedah ini menyulitkan semua komunikasi antara mesin tempatan dan pelayan MySQL, walaupun protokol pangkalan data itu sendiri tidak disulitkan.
Untuk menetapkan ini:

- Pastikan akses SSH didayakan pada pelayan di mana MySQL sedang berjalan.
- Teruskan port tempatan melalui SSH ke port Server MySQL (biasanya 3306).
- Konfigurasikan klien MySQL anda untuk menyambung ke
127.0.0.1
pada port yang dikemukakan.
Sebagai contoh, perintah ini meneruskan port 3306 pada pelayan jauh ke port 3307 secara tempatan:
SSH -L 3307: localhost: 3306 user@remote -server -n
Kemudian, sambungkan menggunakan:
mysql -h 127.0.0.1 -p 3307 -U your_user -p
Dengan cara ini, kelayakan dan pertanyaan pangkalan data sebenar bergerak melalui terowong yang disulitkan, mengurangkan risiko pemintasan.
Konfigurasikan MySQL untuk membolehkan sambungan jauh
Secara lalai, MySQL mengikat hanya kepada localhost. Untuk membolehkan akses jauh, anda perlu menyesuaikan konfigurasi.
- Buka fail config MySQL (
/etc/mysql/my.cnf
atau/etc/my.cnf
) dan cari barisbind-address
. - Tukarnya dari
127.0.0.1
ke IP awam pelayan atau0.0.0.0
(yang membolehkan sambungan dari mana -mana IP). - Mulakan semula MySQL selepas menyimpan perubahan.
Juga, pastikan bahawa:
- Akaun pengguna yang anda sambungkan mempunyai keistimewaan untuk tuan rumah jauh - bukan hanya
localhost
. - Anda tidak membenarkan akses yang terlalu luas seperti
'user'@'%'
kecuali benar -benar diperlukan.
Anda boleh memberikan akses khusus ke alamat IP yang anda sambungkan dari:
Memberi semua keistimewaan pada pangkalan data.* Kepada 'Pengguna'@'Your-Local-IP' yang dikenal pasti oleh 'kata laluan'; Keistimewaan siram;
Ini menambah lapisan kawalan dengan mengehadkan IP yang boleh disambungkan.
Selamatkan pelayan dengan peraturan firewall
Walaupun anda telah mengkonfigurasi MySQL dengan betul, meninggalkan port 3306 terbuka ke internet awam berisiko. Firewall membantu mengehadkan siapa yang boleh mencapai pelabuhan itu di tempat pertama.
Di sisi pelayan:
- Gunakan alat seperti
ufw
atauiptables
untuk menyekat akses ke port MySQL. - Hanya membenarkan lalu lintas dari IP atau julat tertentu.
Contohnya, menggunakan UFW:
SUDO UFW Benarkan dari tempatan anda ke mana-mana port 3306
Jika anda tidak menggunakan akses jauh langsung dan lebih suka terowong SSH sebaliknya, hanya blok port 3306 sepenuhnya - ia tidak perlu dibuka sama sekali dalam kes itu.
Juga, elakkan mempunyai MySQL mendengar antara muka umum melainkan anda mempunyai alasan yang kuat dan perlindungan yang betul di tempatnya.
Pertimbangkan SSL untuk sambungan jauh langsung
Jika anda menyambung secara langsung melalui rangkaian (tidak menggunakan SSH), membolehkan SSL untuk sambungan MySQL adalah suatu keharusan.
- Menjana atau mendapatkan sijil SSL yang sah untuk pelayan MySQL anda.
- Konfigurasikan MySQL untuk memerlukan SSL untuk pengguna jauh.
- Uji sambungan menggunakan klien yang menyokong SSL.
Ini memastikan bahawa walaupun seseorang memintas lalu lintas, mereka tidak akan dapat membaca kandungannya dengan mudah.
Walau bagaimanapun, menubuhkan SSL dengan betul boleh menjadi kompleks. Sekiranya anda tidak biasa dengan tetapan menandatangani dan penyulitan sijil, mulakan kecil dan uji dengan teliti sebelum bergantung kepadanya dalam pengeluaran.
Menyediakan sambungan jauh yang selamat ke MySQL tidak perlu rumit, tetapi ia memerlukan perhatian terhadap perincian. Sama ada anda pergi dengan terowong SSH, sekatan firewall, atau penyulitan SSL, setiap langkah memainkan peranan dalam menjaga data anda selamat.
Dan ingat - semakin sedikit orang yang boleh mengakses pangkalan data anda secara langsung, lebih baik. Simpan kebenaran ketat, memantau log secara teratur, dan sentiasa menganggap seseorang sedang berusaha untuk masuk ke pintu belakang.
Atas ialah kandungan terperinci Mewujudkan sambungan jauh yang selamat ke pelayan MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Failover Perpustakaan Utama MySQL terutamanya termasuk empat langkah. 1. Pengesanan kesalahan: Secara kerap memeriksa proses perpustakaan utama, status sambungan dan pertanyaan mudah untuk menentukan sama ada ia adalah downtime, menyediakan mekanisme semula untuk mengelakkan salah laku, dan boleh menggunakan alat seperti MHA, Orchestrator atau yang disimpan untuk membantu dalam pengesanan; 2. Pilih Perpustakaan Utama Baru: Pilih Perpustakaan Hamba yang paling sesuai untuk menggantikannya mengikut Kemajuan Penyegerakan Data (SecondS_Behind_Master), integriti data binLog, kelewatan rangkaian dan keadaan beban, dan melakukan pampasan data atau campur tangan manual jika perlu; 3. Tukar Topologi: Titik perpustakaan hamba lain ke perpustakaan induk baru, laksanakan semula semula atau aktifkan GTID, kemas kini konfigurasi VIP, DNS atau proksi ke

Langkah-langkah untuk menyambung ke pangkalan data MySQL adalah seperti berikut: 1. Gunakan format perintah asas MySQL-U Username-P-H alamat host untuk menyambung, masukkan nama pengguna dan kata laluan untuk log masuk; 2. Jika anda perlu memasukkan pangkalan data yang ditentukan secara langsung, anda boleh menambah nama pangkalan data selepas arahan, seperti MySQL-Uroot-PmyProject; 3 Jika port bukan lalai 3306, anda perlu menambah parameter -P untuk menentukan nombor port, seperti MySQL-UROOT-P-H192.168.1.100-P3307; Di samping itu, jika anda menghadapi ralat kata laluan, anda boleh memasukkannya semula. Jika sambungan gagal, periksa rangkaian, firewall atau tetapan kebenaran. Jika pelanggan hilang, anda boleh memasang MySQL-Client di Linux melalui Pengurus Pakej. Menguasai arahan ini

Indexesinmysqlimprovequeryspeedbyenablingfasterdataretrieval.1.theyreducedAtascanned, membolehkanmysqltoquicklylocaterelevantrowsinwhereororderbyclauses, terutama sekalimortantforlargeorfrequeriedTables.2.theyspeedupjoinSoSdoSoBes.2

Tahap pengasingan urus niaga mysql adalah berulang, yang menghalang bacaan kotor dan bacaan yang tidak boleh dikembalikan melalui kunci MVCC dan GAP, dan mengelakkan bacaan hantu dalam kebanyakan kes; Tahap utama yang lain termasuk bacaan yang tidak komited (readuncommitted), yang membolehkan bacaan kotor tetapi prestasi terpantas, 1. memastikan integriti data tetapi mengorbankan prestasi;

Untuk membersihkan fail MySQL Binlog, anda harus menggunakan arahan PurgebinaryLogs atau menetapkan masa tamat tempoh automatik, dan fail tidak boleh dipadamkan secara langsung. 1. Gunakan perintah pembersihan untuk membersihkan log lama dengan nama fail atau masa. Sebelum pelaksanaan, anda perlu mengesahkan bahawa perpustakaan hamba tidak lagi menggunakan log yang berkaitan; 2. Semak status log semasa dan lokasi perpustakaan hamba melalui Showmasterstatus dan Showlavestatus untuk memastikan keselamatan julat pembersihan; 3. Adalah disyorkan untuk menetapkan parameter binlog_expire_logs_seconds untuk mencapai pembersihan automatik, yang sesuai untuk persekitaran operasi jangka panjang; 4. Menghapus fail secara langsung akan menyebabkan masalah yang serius seperti kegagalan penyegerakan master-hamba dan maklumat log yang tidak konsisten, dan mesti dielakkan.

Untuk menambah direktori bin MySQL ke laluan sistem, ia perlu dikonfigurasikan mengikut sistem operasi yang berbeza. 1. Sistem Windows: Cari folder bin dalam direktori pemasangan MySQL (laluan lalai biasanya c: \ programfiles \ mysql \ mysqlserverx.x \ bin), klik kanan "Komputer ini" → "sifat" → "Tetapan Sistem Lanjutan" → " MySQL-Pengesahan versi; 2.Macos dan Sistem Linux: Pengguna Bash Edit ~/.bashrc atau ~/.bash_

Langkah-langkah utama untuk memasang MySQL pada Windows 11 adalah seperti berikut: 1. Muat turun versi yang betul, pilih pakej pemasangan Windows MSI dan pastikan sistem itu 64-bit; 2. Pilih mod "Custom" semasa pemasangan, tambahkan MySQLServer dan tetapkan laluan pemasangan yang sesuai; 3. Jalankan wizard konfigurasi, pilih jenis konfigurasi "Servercomputer", tetapkan kata laluan root, dan pilih kaedah permulaan automatik; 4. Selepas pemasangan ujian berjaya, jika arahan segera tidak tersedia, tambahkan direktori MySQL Bin ke pemboleh ubah persekitaran sistem. Ikuti langkah -langkah ini untuk menyelesaikan pemasangan dan konfigurasi dengan lancar.

Untuk menetapkan semula kata laluan root MySQL, sila ikuti langkah -langkah berikut: 1. Hentikan pelayan MySQL, gunakan sudosystemctlstopmysql atau sudosystemctlstopmysqld; 2. Mulakan MySQL In-Skip-Grant-Tables Mode, laksanakan sudomysqld-skip-gergaji meja &; 3. Log masuk ke MySQL dan laksanakan perintah SQL yang sepadan untuk mengubah suai kata laluan mengikut versi, seperti flushprivileges; alteruser'root '@' localhost'identifiedby'your_new
