Tentu saja Anda tidak perlu melakukan semua ini jika menggunakan salah satu layanan Hosting VPS Linux kami, dalam hal ini Anda cukup meminta admin Linux ahli kami untuk memperbaiki kesalahan MySQL ini untuk Anda. Mereka tersedia 24×7 dan akan segera mengurus permintaan Anda
MySQL adalah sistem Manajemen Basis Data open source berdasarkan bahasa "SQL". MySQL dibundel dengan Panel Kontrol XAMPP yang juga merupakan aplikasi open source dan gratis untuk digunakan. Namun, baru-baru ini banyak laporan yang masuk dari pengguna yang tidak dapat mengakses database "MySQL" mereka dari browser mereka dan "Access Denied for Use 'root'@'localhost'" Kesalahan ditampilkan saat melakukannya
Pada artikel ini, kami akan memandu Anda dengan cara termudah untuk memperbaiki masalah ini dan juga memberi tahu Anda alasan yang memicu kesalahan ini. Pastikan untuk mengikuti panduan ini dengan hati-hati dan untuk menghindari masalah lebih lanjut
Apa Penyebab Akses Ditolak untuk Kesalahan Pengguna 'root'@'localhost' di MySQL?
Setelah menerima banyak laporan dari banyak pengguna, kami memutuskan untuk menyelidiki masalah tersebut dan menyusun solusi setelah bereksperimen dengan banyak proses pemecahan masalah yang diketahui. Selain itu, kami melihat alasan yang memicu masalah ini dan mencantumkannya di bawah
- Tidak sah ". ini” Konfigurasi. “. ini” menyimpan konfigurasi peluncuran tertentu untuk server “MySQL”. Ini bertindak sebagai gateway dengan cara memuat database. Dalam beberapa kasus, terlihat bahwa urutan kode tertentu hilang dari ". ini” karena kesalahan ini dipicu
Sekarang setelah Anda memiliki pemahaman dasar tentang sifat masalahnya, kami akan beralih ke solusinya
Larutan. Konfigurasi ulang “. ini” File
Jika “. ini” untuk panel kontrol XAMPP tidak dikonfigurasi dengan benar, ini dapat mencegah pembentukan koneksi aman dengan database MySQL. Oleh karena itu, pada langkah ini kita akan mengkonfigurasi ulang file tersebut dengan menambahkan perintah tambahan. Untuk melakukan itu
Ini adalah salah satu kesalahan paling umum di MySQL. Ini biasanya berarti Anda mencoba terhubung menggunakan akun pengguna yang tidak memiliki hak istimewa yang cukup untuk terhubung
Secara default, setelah penginstalan, MySQL hanya mengizinkan koneksi localhost dan memblokir semua upaya koneksi jarak jauh hingga hak istimewa pengguna dapat dikonfigurasi ulang dengan benar. Itu menjelaskan mengapa Anda tidak dapat terhubung dari klien jarak jauh sementara program sisi server lainnya tampaknya terhubung tanpa masalah
Untuk membuat koneksi jarak jauh, Anda harus mengkonfigurasi ulang dan memberikannya hak istimewa yang sesuai
GRANT ALL PRIVILEGES ON *.* TO 'user_name'@'host' IDENTIFIED BY "password";
Atau
GRANT ALL PRIVILEGES ON *.* TO 'user_name'@'%' IDENTIFIED BY "Password"; _
Untuk tujuan pengujian, Anda dapat memulai server dengan opsi --skip-grant-tables
$ mysqld --skip-grant-tables
Kemudian Anda dapat mengakses tabel hibah MySQL menggunakan pernyataan SHOW GRANTS untuk memeriksa hak istimewa dan mengubahnya jika Anda mau
SHOW GRANTS FOR 'user'@'host';
Setelah selesai, hak siram
FLUSH PRIVILEGES; _
Jika masalah muncul dengan akun root hanya setelah memutakhirkan MySQL, kemungkinan plugin autentikasi telah berubah menjadi auth_socket secara default. Jadi apa yang dapat Anda lakukan untuk mengubah metode otentikasi dari auth_socket ke mysql_native_password
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
Kemudian siram hak istimewa
FLUSH PRIVILEGES; _
Butuh alat GUI yang bagus untuk database?
grep 'temporary password' /var/log/mysqld.log Sort date (newest date)Anda mungkin melihat sesuatu seperti ini;
[root@SERVER ~]# grep 'temporary password' /var/log/mysqld.log 2016-01-16T18:07:29.688164Z 1 [Note] A temporary password is generated for root@localhost: O,k5.marHfFu 2016-01-22T13:14:17.974391Z 1 [Note] A temporary password is generated for root@localhost: b5nvIu!jh6ql 2016-01-22T15:35:48.496812Z 1 [Note] A temporary password is generated for root@localhost: (B*=T!uWJ7ws 2016-01-22T15:52:21.088610Z 1 [Note] A temporary password is generated for root@localhost: %tJXK7sytMJV 2016-01-22T16:24:41.384205Z 1 [Note] A temporary password is generated for root@localhost: lslQDvgwr3/S 2016-01-22T22:11:24.772275Z 1 [Note] A temporary password is generated for root@localhost: S4u+J,Rce_0t [root@SERVER ~]# mysql_secure_installation _Mengamankan penerapan server MySQL
Enter password for user root: The existing password for the user account root has expired. Please set a new password. New password: Re-enter new password: _Jika Anda melihat itu mengatakan
.. Failed! Error: Your password does not satisfy the current policy requirements That means your password needs to have a character such as ! . # - etc... mix characters well, upper case, lower case, ! . , # etc... New password: Re-enter new password: The 'validate_password' plugin is installed on the server. The subsequent steps will run with the existing configuration of the plugin. Using existing password for root. Estimated strength of the password: 100 Change the password for root ? ((Press y|Y for Yes, any other key for No) : Y New password: Re-enter new password: Estimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y Success. Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y Success. By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y - Dropping test database... Success. - Removing privileges on test database... Success. Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y Success. All done! [root@SERVER ~]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 11 Server version: 5.7.10 MySQL Community Server (GPL)Tonton 10 menit terakhir video ini, ini mengajarkan Anda bagaimana Anda melakukannya