Cara Memperbaiki Kesalahan MySQL 1049: Basis Data Tidak Dikenal

Diterbitkan: 2024-03-29

Kesalahan 1049: Basis data tidak dikenal bertindak sebagai cara MySQL memberi sinyal bahwa ia tidak dapat menemukan basis data yang Anda coba gunakan. Pada dasarnya, MySQL memahami permintaan Anda tetapi tidak dapat memenuhinya karena database yang dimaksud, dari sudut pandangnya, tidak ada.

Demikian pula, ketika Anda menemukan pesanmysqldump: got error: 1049: unknown database dan MySQL Error 1049 – SQLSTATE: 42000 (ER_BAD_DB_ERROR) Unknown database '%s', pada dasarnya Anda menghadapi dua sisi mata uang yang sama. Kedua kesalahan tersebut menandakan terputusnya tindakan Anda—apakah Anda mencadangkan, mengekspor, atau menyambung ke database MySQL—dan keberadaan atau aksesibilitas database sebenarnya di server MySQL.

Di blog berikut, kami akan menjelaskan kedua kesalahan tersebut, apa penyebabnya, dan cara memperbaikinya.

Memahami “mysqldump: mendapat kesalahan: 1049: database tidak dikenal”

Saat Anda terlibat dalam tugas mencadangkan atau mengekspor database MySQL menggunakan utilitas mysqldump dan Anda disambut dengan pesan kesalahanmysqldump: got error: 1049: unknown database , ini menandai tantangan spesifik dan umum dalam manajemen database.Kesalahan ini muncul ketika mysqldump mencoba membuat cadangan database yang, sejauh diketahui, tidak ada di server MySQL.

Kesalahan khusus ini penting karena secara khusus berkaitan dengan proses pencadangan atau ekspor basis data, yang menyoroti terputusnya hubungan antara maksud operasional dan keadaan atau aksesibilitas basis data yang sebenarnya. Penyebabnya bisa meliputi:

Kesalahan ketik : Salah memberi nama pada database karena salah ketik atau salah huruf (pada sistem peka huruf besar/kecil).

Absen database : Mencoba mengekspor database yang tidak ada di server.

Masalah izin : Menjalankan mysqldump dengan akun pengguna yang tidak memiliki izin yang diperlukan untuk mengakses database, sehingga menjadikannya “tidak terlihat” oleh pengguna tersebut.

Memahami “Kesalahan MySQL 1049 – SQLSTATE: 42000 (ER_BAD_DB_ERROR) Basis data tidak dikenal '%s'”

Di sisi lain, MySQL Error 1049 – SQLSTATE: 42000 (ER_BAD_DB_ERROR) Unknown database '%s' adalah kesalahan yang lebih luas yang mungkin Anda temui ketika mencoba menyambung ke, memilih, atau memanipulasi database dalam MySQL.%s mewakili nama database yang Anda coba akses.Operasi database dihentikan karena MySQL tidak dapat menemukan database yang ditentukan berdasarkan nama yang diberikan.

Pesan kesalahan ini merupakan indikasi umum bahwa operasi yang melibatkan database MySQL telah gagal karena database tidak dikenali. Hal ini dapat terjadi dalam berbagai konteks, seperti selama inisialisasi aplikasi, saat menjalankan kueri SQL, atau saat mengonfigurasi proses berbasis database. Penyebab mendasar sering kali mencerminkan kesalahan mysqldump tetapi ditemui dalam skenario interaksi database yang lebih luas:

Perbedaan penamaan : Termasuk kesalahan ketik atau masalah sensitivitas huruf pada nama database.

Basis data tidak ada : Basis data yang ditentukan tidak ada di server MySQL yang terhubung.

Akses dan izin : Pengguna mungkin tidak memiliki izin yang tepat untuk melihat atau berinteraksi dengan database yang ditentukan.

Memperbaiki kesalahan MySQL 1049

Untuk kedua jenis kesalahan tersebut, jalur resolusi memiliki kesamaan, disesuaikan untuk mengatasi masalah inti penamaan, keberadaan database, dan izin.

Verifikasi nama database

Keakuratan nama database adalah yang terpenting. Huruf yang salah letak, spasi yang tidak perlu, atau masalah sensitivitas huruf besar-kecil pada sistem mirip UNIX dapat membuat Anda percaya bahwa database tidak ada padahal hanya salah ketik.

Periksa kembali nama database : Pastikan Anda telah mengeja nama database dengan benar di kueri Anda.Berikan perhatian ekstra pada garis bawah, tanda hubung, dan sensitivitas huruf besar-kecil.

Sensitivitas huruf besar-kecil pada sistem UNIX : Ingat, sistem mirip UNIX peka huruf besar-kecil.MyDatabase dan mydatabase dianggap sebagai dua entitas yang berbeda.

Konsistensi adalah kuncinya : Gunakan case yang sama seperti ketika database dibuat.Jika tidak yakin, periksa nama database yang ada untuk mengetahui format kasusnya.

Konfirmasikan keberadaan database

Mengonfirmasi keberadaan database di MySQL merupakan langkah penting dalam pemecahan masalah kesalahan 1049. Proses ini memungkinkan Anda melihat semua database yang dikenali server MySQL, memberikan gambaran jelas tentang apa yang tersedia untuk koneksi dan kueri.

Bagaimana cara mengkonfirmasi keberadaan database

  1. Hubungkan ke server MySQL Anda menggunakan kredensial yang sesuai (nama pengguna dan kata sandi).
  2. Setelah terhubung, navigasikan keKonsol dan jalankan perintah:
 TAMPILKAN DATABASE; 

Perintah ini mencantumkan semua database yang boleh dilihat oleh pengguna yang terhubung. Outputnya akan terlihat seperti ini:

Tampilkan database

Pindai daftar database yang Anda minati. Jika muncul dalam daftar, ini mengonfirmasi bahwa database ada di server dan Anda memiliki izin untuk mengaksesnya.

Jika database tidak muncul dalam daftar, berarti database tersebut tidak ada, atau akun pengguna Anda tidak memiliki izin untuk melihatnya. Dalam kasus yang terakhir, konsultasikan dengan administrator database Anda untuk memastikan akun Anda memiliki hak istimewa yang diperlukan.

Jika Anda mengalami masalah sensitivitas huruf besar-kecil (umum terjadi pada sistem mirip UNIX), pastikan Anda mencocokkan huruf besar/kecil dengan nama database dalam kueri Anda.

Ingat, melihat database dalam daftar tidak berarti Anda memiliki hak akses penuh untuk melakukan semua tindakan di dalamnya. Anda mungkin perlu memeriksa izin tertentu, terutama jika Anda berencana mengubah database atau kontennya.

Periksa izin

Memeriksa izin di MySQL merupakan langkah penting tidak hanya untuk pemecahan masalah tetapi juga untuk memastikan keamanan dan pengoperasian database Anda dengan benar. Sistem izin MySQL dirancang untuk mengontrol akses dan operasi yang dilakukan oleh pengguna, menjadikannya aspek penting dalam manajemen basis data.

Sistem izin membantu mencegah pengguna yang tidak berwenang mengakses atau mengubah data sensitif, sehingga menjaga integritas database Anda. Dengan memberikan hak istimewa tertentu kepada pengguna yang berbeda, MySQL memastikan bahwa pengguna hanya dapat melakukan operasi yang diperlukan untuk peran mereka, sehingga meminimalkan risiko perubahan atau penghapusan data yang tidak disengaja atau berbahaya.

Tinjau hak istimewa pengguna

  1. Masuk ke terminal MySQL Anda.
  2. Di bagian bawah halaman, klik Konsol .
  3. Ketik sintaks untuk meninjau hak pengguna dan klik ctrl+Enter :
 TUNJUKKAN HIBAH UNTUK 'nama_pengguna_anda'@'host_anda';

Pastikan untuk mengganti nama_pengguna_anda dengan nama pengguna akun yang Anda periksa dan host_andadengan host tempat pengguna terhubung. Host dapat berupaalamat IP , nama domain, atau'localhost'jika sambungan dibuat secara lokal. Ini akan menampilkan semua hak istimewa yang diberikan kepada akun pengguna tertentu. Outputnya mungkin terlihat seperti ini:

 MEMBERIKAN PENGGUNAAN PADA *.* KE 'nama_pengguna Anda'@'host_Anda' DIIDENTIFIKASI DENGAN PASSWORD 'kata sandi'

GRANT SELECT, INSERT, UPDATE PADA `database_anda`.* KE 'nama_pengguna_anda'@'host_anda'

Analisis output untuk memahami hak istimewa yang diberikan kepada pengguna. Izin sepertiSELECT , INSERT,UPDATE, danDELETEbersifat umum, namun Anda mungkin melihat izin lain bergantung pada peran pengguna.

Konfirmasikan koneksi server

Dalam lingkungan di mana banyak database atau instance berjalan, menghubungkan ke server MySQL yang benar tidak hanya penting—tetapi juga penting. Beroperasi di server yang salah dapat menyebabkan kebingungan yang signifikan, konfigurasi yang salah diterapkan, dan operasi data yang berpotensi membahayakan.

Untuk menjamin bahwa Anda bekerja dengan kumpulan data yang benar, Anda harus terhubung ke server yang menampung database yang relevan. Hal ini memastikan analisis, pembaruan, dan pencadangan Anda akurat dan dapat diandalkan.

Periksa detail koneksi Anda

Tinjau file konfigurasi atau string koneksi : Mulailah dengan memeriksa file konfigurasi aplikasi Anda atau string koneksi yang Anda gunakan.Cari parameter sepertihost , port,user, danpassword. Parameter ini menentukan di mana dan bagaimana aplikasi Anda terhubung ke server MySQL.

Pastikan keakuratan : Verifikasi bahwa parameter hostcocok dengan alamat server yang dituju. Port harus sesuai dengan port tempat server MySQL mendengarkan (defaultnya adalah 3306).

Perbarui jika perlu : Jika ada detail yang salah, perbarui agar mencerminkan parameter koneksi yang benar.Ini mungkin memerlukan konsultasi dengan administrator jaringan atau manajer database Anda untuk mendapatkan nilai yang benar.

Verifikasi status server

Mulailah dengan perintahping sederhana ke alamat server untuk memastikan konektivitas jaringan.Di terminal atau command prompt Anda, ketik perintah berikut dan tekanEnter :

 ping_mysql_server_host Anda

Anda akan melihat balasan yang menunjukkan bahwa server dapat dijangkau.

Untuk pengujian yang lebih langsung, coba masuk ke server MySQL menggunakan alat baris perintah.

Jalankan perintah berikut dan masukkan kata sandi Anda saat diminta:

 mysql -h server_host_anda -u nama pengguna_anda -p

Jika Anda berhasil terhubung, Anda berada di server yang tepat. Jika tidak, Anda mungkin perlu meninjau kembali detail koneksi Anda atau memeriksa status server.

  • Koneksi yang berhasil menunjukkan bahwa server aktif dan berjalan dan detail koneksi Anda sudah benar.
  • Koneksi yang gagal dapat menandakan masalah pada server itu sendiri, koneksi jaringan Anda, atau ketidakakuratan dalam parameter koneksi Anda.

Membuat atau membuat ulang database

Basis data berfungsi sebagai wadah utama untuk penyimpanan data. Tanpanya, Anda tidak memiliki struktur untuk menampung tabel, tampilan, prosedur, dan komponen data penting lainnya. Jika aplikasi atau skrip Anda mereferensikan database tertentu yang tidak ada, maka aplikasi atau skrip tersebut tidak akan berfungsi sebagaimana mestinya. Membuat database yang hilang akan memulihkan fungsionalitas dan memastikan bahwa operasi berbasis data Anda dapat dilanjutkan.

Cara membuat basis data

  1. Buka alat baris perintah MySQL Anda atau klien MySQL dan sambungkan ke server MySQL Anda dengan kredensial yang sesuai.
  2. Jalankan perintah BUAT DATABASE:
 BUAT DATABASE nama_database;

Ganti database_name dengan nama database yang Anda inginkan.Pastikan nama tersebut unik di dalam server MySQL dan mematuhi konvensi penamaan MySQL.

Setelah menjalankan perintah, MySQL akan membuat database kosong, siap untuk Anda menentukan strukturnya dan mengisinya dengan data.

Gunakan TAMPILKAN DATABASE; perintah untuk membuat daftar semua database dan mengonfirmasi bahwa database baru Anda telah berhasil dibuat.

Tetapkan izin yang sesuai

Setelah membuat database baru, memastikan bahwa akun pengguna Anda (atau akun orang yang akan bekerja dengan database) memiliki izin yang diperlukan untuk mengakses dan memodifikasinya sangatlah penting. Tanpa izin yang sesuai, pengguna tidak akan dapat melakukan operasi dasar seperti membuat tabel atau memasukkan data.

  1. Di dasbor MySQL Anda, navigasikan keConsole .
  2. Masukkan sintaks berikut dan klik ctrl + Enter .
 MEMBERIKAN SEMUA HAK ISTIMEWA PADA database_name.* KEPADA 'username'@'host';

Ganti database_name dengan nama database yang baru Anda buat, nama penggunadengan nama akun pengguna MySQL, danhostdengan nama host asal pengguna terhubung.

Contoh:

MEMBERIKAN SEMUA HAK ISTIMEWA DI my_new_database.* KEPADA 'pengguna saya'@'localhost';

Perintah ini memberikan semua hak istimewa yang tersedia untuk database baru kepada pengguna tertentu, memungkinkan kontrol operasional penuh atas database.

Untuk memastikan bahwa perubahan pada hak istimewa segera diterapkan, jalankan:

 HAK ISTIMEWA PENYIMPANAN;

Menutup pikiran

Di blog ini, kita telah mempelajari cara memecahkan masalah dan mengatasi MySQL Error 1049, yang menunjukkan bahwa database tertentu tidak dapat ditemukan atau diakses. Kami telah menyoroti penyebab umum seperti kesalahan ketik, upaya mengakses database yang tidak ada, dan masalah izin. Langkah penyelesaiannya antara lain memverifikasi nama database, mengonfirmasi keberadaannya di server, memeriksa izin pengguna, memastikan koneksi server yang benar, dan jika diperlukan, membuat atau membuat ulang database dengan izin yang sesuai.

Percepat pembuatan situs WordPress Anda dengan AI

Buat situs web WordPress khusus yang disesuaikan dengan kebutuhan bisnis Anda 10X lebih cepat dengan 10Web AI Website Builder.

Hasilkan Situs Web Anda
Tidak diperlukan kartu kredit