Seting untuk membenarkan PC lain menyambung ke pangkalan data MySQL (versi Windows)

Laman dikemaskini :
Tarikh penciptaan halaman :

Persekitaran operasi

Mysql
  • MySQL 8.0
Windows
  • Windows 11

Prasyarat

Mysql
  • MySQL 8.0
Windows
  • Windows 11
  • Windows 10
Pelayan Windows
  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012 R2

prasyarat

  • MySQL 8 dipasang

Memeriksa Firewall

Dalam MySQL, tembok api ditetapkan pada skrin berikut semasa pemasangan, jadi anda tidak perlu mengkonfigurasi sebarang tetapan tambahan.

Semak tetapan tembok api anda sekiranya berlaku. Oleh kerana operasi sehingga paparan berbeza bergantung pada versi Windows, masukkan "firewall" dalam menu mula untuk memaparkannya.

Pilih "Lanjutan" daripada menu di sebelah kiri.

Jika anda memilih "Peraturan Masuk" dari kiri, anda dapat melihat bahawa "Pelabuhan 3306" dan "Pelabuhan 33060" telah ditambahkan ke senarai. Inilah yang ditambah dalam MySQL.

Menyemak fail konfigurasi

Sebelum ini, adalah perlu untuk bind-address menukar dari fail konfigurasi, tetapi dalam versi semasa, item ini tidak wujud, jadi tidak perlu mengubah tetapan.

Fail konfigurasi untuk MySQL pada Windows boleh didapati di lokasi berikut: ProgramData Folder tersembunyi, jadi masukkan laluan terus ke dalam bar alamat Penjelajah Fail atau tetapkan folder tersembunyi untuk kelihatan.

C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

Seting keizinan capaian pengguna

Untuk log masuk ke pangkalan data MySQL, anda perlu menentukan pengguna, tetapi secara lalai semua pengguna hanya boleh mencapainya secara setempat. Jadi, di sini kami akan menetapkan kebenaran untuk pengguna.

Saya beroperasi pada akaun untuk root menyimpan langkah penambahan akaun kali ini. Dalam operasi sebenar, adalah wajar untuk membuat akaun pengguna yang berasingan dan membenarkan sambungan ke akaun tersebut.

Terdapat dua cara untuk membenarkan sambungan: dengan menggunakan arahan atau menggunakan GUI.

Menetapkan Keistimewaan Akses Pengguna (Operasi GUI)

Daripada menu Mula, pilih "MySQL -> MySQL Workbench 8.0 CE" untuk memulakannya.

Apabila anda memulakannya, terdapat tika lalai di sudut bawah kiri, jadi pilihnya.

Anda akan diminta kata laluan, jadi log masuk dengan akaun root.

Pilih tab Pentadbiran daripada menu Navigator di sebelah kiri dan pilih Pengguna dan Keistimewaan.

Dalam senarai, pilih akaun yang anda ingin ubah keizinan. root Dalam kes ini, kami telah memilih akaun.

Limit to Hosts Matching Saya fikir terdapat item dan ia ditetapkan secara localhost lalai. Ini bermakna ia hanya boleh diakses dari localhost. Setkan nilai ini kepada alamat IP PC yang anda ingin benarkan sambungan. Jika anda memasukkan biasanya, hanya satu unit yang akan disasarkan, tetapi jika anda ingin memilih julat, anda boleh menggunakan kad bebas "%", jadi jika anda menentukan "192.168.0.%", anda akan membenarkan "192.168.0.0" ~ "192.168.0.255".

Setelah dimasukkan, anda boleh menggunakannya dengan mengklik butang "Terapkan" di bahagian bawah sebelah kanan.

Anda dapat melihat bahawa senarai Pengguna juga telah berubah.

Mengesetkan Keistimewaan Akses Pengguna (Perintah)

Tambahan
Ia bukan maklumat muktamad kerana ia berada dalam skop penyelidikan, tetapi dalam MySQL 8, tidak mungkin untuk menukar hos kebenaran dengan arahan selepas pengguna dibuat, jadi perlu mengesahkan tuan rumah pada masa penciptaan pengguna.

Daripada menu Mula, pilih "MySQL -> MySQL 8.0 Command Line Client" dan jalankannya.

Anda akan diminta untuk kata laluan, jadi masukkan kata laluan root.

Anda boleh menyemak imbas senarai pengguna dan hos dengan memasukkan arahan berikut:

select user,host from mysql.user;

Untuk mencipta pengguna, masukkan arahan berikut: Masukkan alamat IP PC yang anda mahu sambungkan secara luaran ke "Hos Kebenaran". Oleh kerana kad bebas "%" boleh digunakan, masukkan "%" untuk membolehkan akses dari semua, dan "192.168.0.0" ~ "192.168.0.255" untuk membolehkan "192.168.0.%". Jika anda ingin memasukkan "%", kurungkannya dalam tanda petikan tunggal.

create user <ユーザー名>@<アクセス許可ホスト> identified by '<パスワード>';

Contoh Input

create user user1@'192.168.0.%' identified by 'xxxxxxxx';

Saya dapat mencipta pengguna dengan arahan di atas, tetapi saya tidak mempunyai sebarang keistimewaan akses, jadi saya menambah keizinan dengan arahan berikut.

Jenis keistimewaan termasuk "SEMUA [KEISTIMEWAAN]", "CIPTA (keizinan untuk mencipta pangkalan data, jadual, dll.)", dan "PILIH (semak imbas rekod jadual)". Sila semak laman web rasmi untuk kandungan kebenaran.

Keizinan yang akan ditetapkan boleh ditentukan berdasarkan setiap pangkalan data atau setiap jadual. Jika anda memasukkan "*.*", anda boleh mengesetkan keizinan capaian untuk semua pangkalan data dan jadual.

grant <権限の種類> on <データベース名>.<テーブル名> to <ユーザー名>@<アクセス許可ホスト>;

Contoh Input

grant all privileges on *.* to user1@'192.168.0.%';

Untuk menggambarkan seting, masukkan perintah berikut:

flush privileges;

Jika anda menyemak senarai pengguna sekali lagi, anda boleh mengesahkan bahawa ia telah dicipta dan dikonfigurasi.

Semakan sambungan

Mana-mana alat yang boleh disambungkan dari luar adalah baik, tetapi kali ini kami akan cuba berhubung dengan Workbench, pelanggan rasmi MySQL.

Mulakan Workbench jika anda telah memasangnya pada PC lain.

Tambah Sambungan MySQL.

Masukkan seting yang diperlukan untuk sambungan. Anda boleh menggunakan nama DNS, tetapi atas sebab tertentu saya tidak dapat menyambung ke Workbench, jadi saya menentukannya mengikut alamat IP.

Sekiranya sambungan diperiksa dan berjaya, dapat dinilai bahawa tetapan itu normal.