Tampaknya saya mungkin secara tidak sengaja memuat plugin validasi kata sandi di MySQL 5.7. Plugin ini tampaknya memaksa semua kata sandi untuk mematuhi aturan tertentu.
Saya ingin mematikan ini.
Saya sudah mencoba mengubah variabel validate_password_length seperti yang disarankan di sini tetapi tidak berhasil.
mysql> SET GLOBAL validate_password_length=4;
Query OK, 0 rows affected (0.00 sec)
mysql> SET PASSWORD FOR 'app' = PASSWORD('abcd');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
Saya ingin membongkar plugin atau membinasakannya.
SET GLOBAL validate_password_policy=LOW;
SET GLOBAL validate_password.policy=LOW;
Jawaban:
Inilah yang saya lakukan untuk menghapus plugin kata sandi yang valid:
mysql -h localhost -u root -p
uninstall plugin validate_password;
UNINSTALL COMPONENT 'file://component_validate_password';
sumber
INSTALL PLUGIN validate_password SONAME 'validate_password.so';
grep 'password' /var/log/mysqld.log | tail -1
dan kemudian/usr/bin/mysql_secure_installation
. Setelah melakukannya, Anda dapat menjalankan perintah dari srayhunter di atas kemudian jalankanmysqladmin -u root -p'oldpassword' password newpass
untuk menggunakan kata sandi yang Anda inginkan.cracklib_password_check
dalam MariaDB saat ini.UNINSTALL COMPONENT 'file://component_validate_password';
mysql> SET GLOBAL validate_password_policy = 0;
Saya menggunakan MySQL v 8.0.12 dan perintah untuk menonaktifkan komponen validasi kata sandi adalah:
Untuk menginstalnya kembali, perintahnya adalah:
Jika Anda hanya ingin mengubah kebijakan plugin validasi kata sandi:
sumber
Membangun jawaban dari Sharfi, edit file /etc/my.cnf dan tambahkan baris ini:
Itu harus cukup mensterilkan validasi seperti yang diminta oleh OP. Anda mungkin ingin me-restart mysqld setelah perubahan ini. Tergantung pada OS Anda, itu akan terlihat seperti:
validate_password_policy mengambil nilai 0, 1, atau 2 atau kata RENDAH, SEDANG, dan KUAT yang sesuai dengan angka-angka itu. Standarnya adalah MENENGAH (1) yang memerlukan kata sandi berisi setidaknya satu huruf besar, satu huruf kecil, satu digit, dan satu karakter khusus, dan total panjang kata sandi minimal 8 karakter. Mengubah ke RENDAH seperti yang saya sarankan di sini maka hanya akan memeriksa panjang, yang jika belum diubah melalui parameter lain akan memeriksa panjang 8. Jika Anda ingin mempersingkat batas panjang juga, Anda juga bisa menambahkan validate_password_length ke file my.cnf.
Untuk info lebih lanjut tentang level dan detail, lihat dokumen mysql .
Untuk MySQL 8, properti telah berubah dari "validate_password_policy" menjadi "validate_password.policy". Lihat dokumen mysql yang diperbarui untuk info terbaru.
sumber
SET GLOBAL validate_password_policy=LOW;
Untuk menonaktifkan pemeriksaan kata sandi di mariadb-10.1.24 (Fedora 24), saya harus mengomentari baris di file /etc/my.cnf.d/cracklib_password_check.cnf :
kemudian mulai kembali layanan mariadb:
sumber
Anda dapat mengkonfigurasi ini di file konfigurasi mysql file terbuka
/etc/my.cnf
Di file ini semua baris yang mengkonfigurasi kebijakan kata sandi membuat mereka berkomentar sepertiBatalkan komentar dan ubah nilai properti yang ingin Anda ubah.
sumber
Jika Anda ingin membuat pengecualian, Anda dapat menerapkan "retasan" berikut. Ini membutuhkan pengguna dengan
DELETE
danINSERT
hak istimewa untukmysql.plugin
tabel sistem.Penafian keamanan Bland: Pertimbangkan, mengapa Anda membuat kata sandi Anda lebih pendek atau lebih mudah dan mungkin mempertimbangkan untuk menggantinya dengan yang lebih kompleks. Namun, saya mengerti momen "ini jam 3 pagi dan hanya perlu bekerja", pastikan Anda tidak membangun sistem peretasan, jangan sampai Anda sendiri diretas
sumber
Lebih jauh ke jawaban dari ktbos:
Saya memodifikasi file mysqld.cnf dan mysql gagal memulai. Ternyata saya memodifikasi file yang salah!
Jadi pastikan file yang Anda modifikasi mengandung tag segmen seperti [mysqld_safe] dan [mysqld]. Di bawah yang terakhir saya lakukan seperti yang disarankan dan menambahkan baris:
Ini berfungsi dengan baik untuk menyelesaikan masalah saya karena tidak memerlukan karakter khusus dalam kata sandi.
sumber
Copot pemasangan:
Plugin yang dihapus tidak ditampilkan oleh
show plugins;
Install:
Dinonaktifkan oleh konfigurasi:
Plugin dapat dinonaktifkan dengan konfigurasi hanya jika diinstal.
sumber
Saya mengalami masalah di Ubuntu 18.04 di Mysql. Ketika saya perlu membuat pengguna baru, kebijakan itu selalu tinggi.
Cara saya menemukan cara menonaktifkan, untuk kolega masa depan yang datang untuk menyelidiki, ditetapkan rendah.
Login ke server mysql sebagai root
Tetapkan tipe validasi baru
Mulai ulang mysql
sumber
Pada beberapa instalasi, Anda tidak dapat menjalankan perintah ini sampai Anda mengatur ulang kata sandi root. Anda tidak dapat mengatur ulang kata sandi root, hingga Anda menjalankan perintah ini. Classic Catch-22.
Salah satu solusi yang tidak disebutkan oleh responden lain adalah menonaktifkan sementara plugin melalui konfigurasi mysql. Dalam setiap
my.cnf
, di[mysqld]
bagian, tambahkan:dan restart server. Ubah kata sandi, dan atur nilainya kembali ke 0, dan mulai lagi.
sumber
Untuk referensi dan masa depan, seseorang harus membaca dokumen di sini https://dev.mysql.com/doc/mysql-secure-deployment-guide/5.7/en/secure-deployment-password-validation.html
Maka Anda harus mengedit
mysqld.cnf
file Anda , misalnya:Kemudian, tambahkan di bagian [mysqld], yang berikut ini:
Pada dasarnya, jika Anda mengedit default Anda, itu akan terlihat seperti:
Kemudian, Anda dapat memulai kembali:
Jika Anda lupa
plugin-load-add=validate_password.so
bagian, Anda akan mengalami kesalahan saat restart.Nikmati !
sumber
Untuk mysql 8.0.7, Buka direktori mysql Anda, dan kemudian gunakan:
untuk mengkonfigurasi opsi kata sandi.
sumber
tidak perlu berhenti / mulai mysql
sumber