Cara Memperbaiki Kesalahan MySQL 1819 (HY000) di Linux

Cara Memperbaiki Kesalahan MySQL 1819 (HY000) di Linux

Semasa membuat a Mysql pengguna dengan kata laluan yang agak lemah, anda mungkin menghadapi ralat 'Ralat MySQL 1819 (HY000): Kata laluan anda tidak memenuhi syarat dasar semasa'. Secara teknikal, ini bukan ralat, tetapi pemberitahuan bahawa anda menggunakan kata laluan yang tidak memenuhi syarat dasar kata laluan yang disyorkan.

Dengan kata lain, anda menggunakan kata laluan yang lemah yang boleh ditebak dengan mudah atau dipaksa. Mekanisme keselamatan terbina dalam tidak menggalakkan pengguna daripada membuat kata laluan yang lemah yang dapat menyebabkan pangkalan data anda terdedah kepada pelanggaran.

Artikel yang berkaitan: Petua berguna untuk menyelesaikan masalah kesilapan biasa di mysql

Contohnya, saya menghadapi kesilapan semasa membuat pengguna seperti yang ditunjukkan

mysql> buat pengguna 'tecmint'@'localhost' yang dikenal pasti oleh 'mypassword'; 
Ralat MySQL 1819 (HY000)

Tidak ada kata laluan bahawa kata laluan sangat lemah dan dapat memberikan risiko keselamatan.

Cara Menyelesaikan Kesalahan MySQL 1819 (HY000) di Linux

The Mysql Kapal pangkalan data dengan a validate_password plugin yang apabila diaktifkan, menguatkuasakan dasar pengesahan kata laluan. Terdapat 3 tahap dasar pengesahan kata laluan yang dikuatkuasakan oleh plugin.

  • Rendah: Membolehkan pengguna menetapkan kata laluan 8 atau kurang aksara.
  • Medium: Membolehkan pengguna menetapkan kata laluan 8 atau kurang aksara dengan kes bercampur dan watak khas.
  • Kuat: Membolehkan pengguna menetapkan kata laluan yang mempunyai semua atribut kata laluan peringkat sederhana dengan kemasukan fail kamus.

Secara lalai, dasar kata laluan ditetapkan ke Medium. Anda boleh mengesahkan tahap dasar kata laluan, dengan melaksanakan arahan:

$ Menunjukkan pembolehubah seperti 'validate_password%'; 
Periksa Dasar Kata Laluan MySQL

Sekiranya anda menjalankan arahan dan dapatkan set kosong output, maka plugin belum diaktifkan.

Untuk membolehkan validate_password plugin, jalankan arahan di bawah.

mysql> pilih plugin_name, plugin_status dari maklumat_schema.plugin di mana plugin_name seperti 'validate%'; mysql> Pasang plugin validate_password soname 'validate_password.Jadi '; 

Untuk mengesahkan bahawa plugin diaktifkan, jalankan arahan.

mysql> pilih plugin_name, plugin_status dari maklumat_schema.plugin di mana plugin_name seperti 'validate%'; 

Anda harus mendapatkan output yang ditunjukkan di bawah:

Dayakan Dasar Kata Laluan MySQL

Untuk menyelesaikan masalah ini, anda perlu menetapkan dasar pengesahan kata laluan ke tahap terendah. Saya tahu ini bunyi yang tidak bertentangan kerana ia mewujudkan jalan untuk menetapkan kata laluan yang lemah yang akhirnya boleh menyebabkan pangkalan data anda dikompromikan oleh penggodam.

Namun, jika anda masih bersungguh -sungguh, inilah yang boleh anda lakukan.

Cara Mengubah Dasar Pengesahan Kata Laluan MySQL

Untuk menyelesaikan Ralat MySQL 1819 (HY000) ralat, tetapkan dasar pengesahan kata laluan yang lebih rendah seperti yang ditunjukkan.

mysql> set global validate_password_policy = rendah; Atau mysql> tetapkan global validate_password_policy = 0; 

Anda boleh mengesahkan tahap dasar pengesahan kata laluan.

$ Menunjukkan pembolehubah seperti 'validate_password%'; 
Tukar Dasar Kata Laluan MySQL

Sekarang anda boleh meneruskan dan memberikan kata laluan yang agak lemah mengikut kehendak anda.

mysql> buat pengguna 'tecmint'@'localhost' yang dikenal pasti oleh 'mypassword'; 

Untuk kembali ke 'Medium'Tahap Dasar Kata Laluan, hanya memohon arahan:

mysql> tetapkan global validate_password_policy = medium; 
Kesimpulan

Secara peribadi, saya tidak akan mengesyorkan menetapkan dasar kata laluan peringkat rendah atas alasan yang jelas. Sama ada pengguna biasa atau pengguna pangkalan data, disarankan untuk sentiasa menetapkan kata laluan MySQL yang kuat dengan lebih daripada 8 aksara dengan campuran huruf besar, huruf kecil, angka dan khas watak.

Panduan ini adalah demi mereka yang ingin mengetahui cara menavigasi kesilapan sedemikian, jika tidak, menetapkan kata laluan yang kuat selalu disyorkan.