Kesalahan koneksi basis data. instalasi magento


Jawaban:


9

Pertama-tama, periksa nama pengguna dan kata sandi basis data Anda. Sebelum Anda melanjutkan ke langkah ini, Anda harus sudah menyiapkan database di MySQL. Anda perlu membuat pengguna dan memberikan hak akses kepada pengguna itu.

Kemudian periksa konfigurasi server MySQL Anda. Nomor port default adalah 3306. Namun, admin sistem Anda mungkin mengubahnya ke yang lain. Atau jika Anda menggunakan paket perangkat lunak seperti MAMP / WAMP, nomor port dapat diatur ke sesuatu selain 3306. Dalam kasus ini, Anda perlu secara eksplisit memasukkan nomor port di bidang Host.

Jika semua ini benar dan Anda masih memiliki kesalahan koneksi database, Anda dapat mencoba menggunakan akun root untuk mengakses database. Jika root berhasil, itu berarti ada masalah dengan hak istimewa dalam pengaturan MySQL Anda. Meskipun tidak disarankan untuk menggunakan akun root untuk penyebaran produksi di masa depan karena menambah risiko keamanan ke server.


masih memiliki kesalahan koneksi database.
Darshan Patel

5

Ini adalah pertanyaan yang cukup lama tetapi saya baru-baru ini menjumpainya dan saya berharap jawaban ini membantu orang lain. Masalah saya datang ke versi Magento lama di atas instalasi WAMP baru. Sejak MySQL 5.6.1, variabel have_innodb telah dihapus. Namun, penginstal Magento memeriksa variabel itu dan membuat kesalahan jika tidak menemukannya. Jika Anda benar-benar memeriksa log pengecualian, Anda akan melihat kesalahan bahwa server database tidak mendukung InnoDB. Namun dalam catch handler itu hanya mencatat pengecualian itu dan melempar pesan "Database connection error" yang umum.

Perbaikan paling sederhana, jika Anda yakin DB Anda mendukung InnoDB, cukup dengan mengedit app\code\core\Mage\Install\Model\Installer\Db.php, menemukan checkDatabasemetode, dan mengomentari bagian di akhir blok coba yang memeriksa have_innodb. Biasanya, saya tidak akan menyarankan pengeditan file inti, tetapi ini hanya untuk membuat installer bekerja, jadi saya akan mengatakan itu cukup aman.


4

Pertama buat db http://localhost/phpmyadmin

mari asumsikan DB Name: testdb

Halaman konfigurasi nama db: nama testdb: kata sandi root: kosong (jangan masukkan nilai apa pun)


4
  • Pergi ke app/code/core/Mage/Install/Model/Installer/Db.php
  • Temukan checkDatabase($data)fungsinya
  • Di akhir fungsi ini, ada kode berikut:

    Mage::throwException(Mage::helper('install')->__('Database connection error.'));
  • Ubah sebagai berikut:

    Mage::throwException(Mage::helper('install')->__($e->getMessage()));
  • Pergi ke browser Anda, di mana Anda menginstal Magento, klik Continuetombol

  • Sekarang, Anda harus dapat melihat beberapa pesan kesalahan yang tepat

Dalam kasus saya, saya mendapat pesan kesalahan berikut:

Server basis data tidak mendukung mesin penyimpanan InnoDB.

Jadi, untuk mengatasi ini, saya berkomentar cek InnoDB dalam checkDatabasefungsi yang sama .

// check InnoDB support
/*if (!isset($variables['have_innodb']) || $variables['have_innodb'] != 'YES') {
    Mage::throwException(Mage::helper('install')->__('Database server does not support the InnoDB storage engine.'));
}*/

Setelah itu, saya dapat menginstal Magento.


1

Anda dapat mencoba menggunakan kode ini untuk menemukan rincian lebih lanjut tentang apa jenis kesalahan koneksi database itu atau untuk memeriksa apakah nama pengguna dan kata sandi itu benar

<?php
      $mysqli=mysqli_connect("host","user","password","database name");

      if(mysqli_connect_errno()){
          printf("Connect failed: %s\n", mysqli_connect_error());
          exit();
      }else{
          echo "Connection succesfull!";
      }
?>

Simpan skrip ini sebagai file php dan letakkan di server. Output akan menjadi kesalahan koneksi, atau jika tidak ada kesalahan output akan menjadi "Koneksi berhasil!" "host" - Anda dapat memasukkan di sini "localhost", "user" - di sini Anda harus memasukkan nama pengguna basis data, "kata sandi" - di sini Anda harus memasukkan kata sandi basis data, "nama basis data" - di sini Anda harus memasukkan nama basis data.


0
  1. Anda telah memberikan nama basis data sebagai magento
  2. Jadi, harap periksa apakah Anda membuat basis data magento itu atau tidak.
  3. Jika tidak, Anda harus membuat db kosong bernama magentopertama.
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.