Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Setel Ulang Kata Sandi Root Server MySQL

Secara default, Server MySQL akan diinstal dengan superuser root tanpa kata sandi apa pun. Anda dapat terhubung ke server MySQL sebagai root tanpa memerlukan kata sandi atau dengan memasukkan kata sandi kosong. Namun, jika Anda telah menetapkan kata sandi untuk root dan lupa atau tidak dapat mengingat kata sandinya, maka Anda perlu mengatur ulang kata sandi root untuk MySQL.

Manual Referensi MySQL memiliki langkah-langkah detail tentang cara mereset kata sandi untuk root yaitu sebagai berikut:

Prosedur di bawah Windows:

  1. Masuk ke sistem Windows tempat MySQL dijalankan sebagai Administrator.
  2. Hentikan server MySQL jika sedang berjalan. Untuk server yang berjalan sebagai layanan Windows, buka Manajer Layanan:

    Menu Mulai -> Panel Kontrol -> Alat Administratif -> Layanan

    Kemudian temukan layanan MySQL dalam daftar, dan hentikan.

    Jika server Anda tidak berjalan sebagai layanan, Anda mungkin perlu menggunakan Pengelola Tugas untuk menghentikannya secara paksa.

  3. Buat file teks dan tempatkan perintah berikut di dalamnya masing-masing pada satu baris:
    UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
    FLUSH PRIVILEGES;
    
    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
    
    Save the file with any name. For this example the file will be C:\mysql-init.txt.
  4. Open a console window to get to the DOS command prompt: Start Menu -> Run -> cmd
  5. If MySQL is installed in C:\mysql. If MySQL is installed in another location, adjust the following commands accordingly. At the DOS command prompt, execute this command:
    C:\> C:\mysql\bin\mysqld-nt --init-file=C:\mysql-init.txt

    Isi file yang diberi nama oleh opsi --init-file dijalankan saat server mulai, mengubah kata sandi root. Setelah server berhasil dimulai, Anda harus menghapus C:\mysql-init.txt.

    Jika Anda menginstal MySQL menggunakan Wizard Instalasi MySQL, Anda mungkin perlu menentukan opsi --defaults-file:

    C:\> "C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld-nt.exe"
             --defaults-file="C:\Program Files\MySQL\MySQL Server 5.0\my.ini"
             --init-file=C:\mysql-init.txt

    Pengaturan --defaults-file yang sesuai dapat ditemukan menggunakan Manajer Layanan:

    Menu Mulai -> Panel Kontrol -> Alat Administratif -> Layanan

    Temukan layanan MySQL dalam daftar, klik kanan padanya, dan pilih opsi Properties. Bidang Path to executable berisi pengaturan --defaults-file. Pastikan untuk memberikan argumen --init-file dengan path sistem lengkap ke file, terlepas dari direktori kerja Anda saat ini

  6. Hentikan server MySQL, lalu mulai ulang dalam mode normal lagi. Jika server MySQL dijalankan sebagai layanan, mulai dari jendela Layanan Windows. Jika Anda memulai server secara manual, gunakan perintah apa pun yang biasa Anda gunakan.
  7. Hubungkan ke server MySQL dengan menggunakan kata sandi baru. Ingat juga untuk menghapus file mysql-init.txt setelah selesai.

Untuk lingkungan Unix dan Linux, prosedur untuk mereset password root adalah sebagai berikut:

  1. Masuk ke sistem Unix sebagai pengguna root Unix atau sebagai pengguna yang sama dengan yang dijalankan oleh server mysqld.
  2. Temukan file .pid yang berisi ID proses server. Lokasi dan nama yang tepat dari file ini bergantung pada distribusi, nama host, dan konfigurasi Anda. Lokasi umum adalah /var/lib/mysql/, /var/run/mysqld/, dan /usr/local/mysql/data/. Umumnya, nama file memiliki ekstensi .pid dan dimulai dengan mysqld atau nama host sistem.

    Hentikan server MySQL dengan mengirimkan kill normal (bukan kill -9) ke proses mysqld, menggunakan nama path dari file .pid dengan perintah berikut:

    shell> kill `cat /mysql-data-directory/host_name.pid`

    Perhatikan penggunaan tanda kutip balik daripada tanda kutip maju dengan perintah cat; ini menyebabkan output cat diganti menjadi perintah kill.

  3. Buat file teks dan letakkan perintah berikut di dalamnya pada satu baris:
    UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
    FLUSH PRIVILEGES;

    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

    Simpan file dengan nama apapun. Untuk contoh ini filenya adalah ~/mysql-init.

  4. Mulai ulang server MySQL dengan opsi --init-file=~/mysql-init khusus:
    shell> mysqld_safe --init-file=~/mysql-init &

    Isi file init dijalankan saat server mulai, mengubah kata sandi root. Setelah server berhasil dimulai, Anda harus menghapus ~/mysql-init.

  5. Mulai ulang server secara normal. Hubungkan ke server MySQL dengan menggunakan kata sandi baru.

Sebagai alternatif, pada platform apa pun, klien mysql dapat digunakan untuk mengatur kata sandi baru, meskipun itu cara yang kurang aman untuk mengatur ulang kata sandi (instruksi terperinci di sini):

  1. Hentikan mysqld dan mulai ulang dengan opsi --skip-grant-tables --user=root (pengguna Windows menghilangkan bagian --user=root).
  2. Hubungkan ke server mysqld dengan perintah ini:
    shell> mysql -u root
  3. Keluarkan pernyataan berikut di klien mysql:
    mysql> UPDATE mysql.user SET Password=PASSWORD('newpwd')
        ->                   WHERE User='root';
    mysql> FLUSH PRIVILEGES;

    Ganti 'newpwd' dengan kata sandi root sebenarnya yang ingin Anda gunakan.

  4. Anda seharusnya dapat terhubung menggunakan sandi baru.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pengaturan sql_mode global di mysql

  2. Mengurutkan berdasarkan urutan nilai dalam klausa SQL IN()

  3. SQL - JIKA ADA UPDATE ELSE INSERT INTO

  4. Bagaimana cara menyimpan nama file di database, dengan info lain saat mengunggah gambar ke server menggunakan PHP?

  5. Pratinjau dan unggah gambar menggunakan database PHP dan MySQL