Veritabanı bağlantı hatası. magento kurulum


Yanıtlar:


9

Her şeyden önce, veritabanı kullanıcı adınızı ve şifrenizi kontrol edin. Bu adıma geçmeden önce, veritabanını MySQL'de önceden kurmuş olmanız gerekir. Bir kullanıcı oluşturmanız ve bu kullanıcıya erişim ayrıcalıkları vermeniz gerekir.

Ardından MySQL sunucu yapılandırmanızı kontrol edin. Varsayılan bağlantı noktası numarası 3306'dır. Ancak, sistem yöneticiniz bunu başka bir şeye değiştirebilir. Veya MAMP / WAMP gibi yazılım paketleri kullanıyorsanız, bağlantı noktası numarası 3306 dışında bir değere ayarlanabilir. Bu durumlarda, bağlantı noktası numarasını Ana Bilgisayar alanına açıkça koymanız gerekir.

Tüm bunlar doğruysa ve hala veritabanı bağlantı hatası varsa, veritabanına erişmek için root hesabını kullanmayı deneyebilirsiniz. Kök çalışırsa, MySQL ayarlarınızdaki ayrıcalıklarla ilgili sorunlar olduğu anlamına gelir. Her ne kadar sunucuya güvenlik riskleri eklediğinden, gelecekteki üretim dağıtımı için root hesabı kullanılması önerilmez.


hala veritabanı bağlantı hatası var.
Darshan Patel

5

Bu oldukça eski bir soru ama son zamanlarda karşılaştım ve umarım bu cevap başka birine yardımcı olur. Sorunum, yeni bir WAMP kurulumunun üzerine Magento'nun eski bir sürümüne geldi. MySQL 5.6.1'den beri have_innodb değişkeni kaldırıldı. Ancak, Magento yükleyicisi bu değişkeni kontrol eder ve bulamazsa bir hata atar. Kural dışı durum günlüğünü gerçekten denetlerseniz, veritabanı sunucusunun InnoDB'yi desteklemediğini belirten bir hata görürsünüz. Ancak catch işleyicisinde sadece bu istisnayı günlüğe kaydeder ve genel bir "Veritabanı bağlantı hatası" mesajı atar.

En basit düzeltme, DB'nizin InnoDB'yi desteklediğinden eminseniz, basitçe düzenlemek app\code\core\Mage\Install\Model\Installer\Db.php, checkDatabaseyöntemi bulmak ve deneyen blokun sonundaki bölümü yorumlamaktır have_innodb. Normalde, çekirdek dosyaları düzenlemeyi savunmam, ama bu sadece yükleyicinin çalışmasını sağlamak için, bu yüzden yeterince güvenli olduğunu söyleyebilirim.


4

İlk önce bir db oluşturun http://localhost/phpmyadmin

diyelim ki DB Adı: testdb

Yapılandırma sayfası db adı: testdb kullanıcı adı: kök parola: boş (herhangi bir değer girmeyin)


4
  • Adresine git app/code/core/Mage/Install/Model/Installer/Db.php
  • checkDatabase($data)İşlevi bulun
  • Bu işlevin sonunda aşağıdaki kod vardır:

    Mage::throwException(Mage::helper('install')->__('Database connection error.'));
  • Aşağıdaki şekilde değiştirin:

    Mage::throwException(Mage::helper('install')->__($e->getMessage()));
  • Magento'yu yüklediğiniz tarayıcınıza gidin, Continuedüğmesini tıklayın

  • Şimdi, bazı uygun hata mesajlarını görebilmelisiniz

Benim durumumda, aşağıdaki hata iletisini aldım:

Veritabanı sunucusu InnoDB depolama motorunu desteklemez.

Yani, bunu çözmek için, aynı checkDatabaseişlev InnoDB kontrol yorumladı .

// 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.'));
}*/

Bundan sonra Magento'yu kurabildim.


1

Ne tür bir veritabanı bağlantı hatası olduğu hakkında daha fazla ayrıntı bulmak veya kullanıcı adı ve parolanın doğru olup olmadığını kontrol etmek için bu kodu kullanmaya çalışabilirsiniz.

<?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!";
      }
?>

Bu komut dosyasını bir php dosyası olarak kaydedin ve sunucuya yerleştirin. Çıkış bağlantı hatası olacaktır veya hata yoksa çıkış "Bağlantı başarılı!" Olacaktır. "host" - buraya girebilirsiniz "localhost", "user" - burada veritabanı kullanıcı adı, "password" girmelisiniz - burada veritabanı şifresi, "database name" girmelisiniz - burada veritabanı adını girmelisiniz.


0
  1. Veritabanı adını şu şekilde verdiniz: magento
  2. Lütfen, bu magento adlı veritabanını oluşturup oluşturmadığınızı kontrol edin.
  3. Değilse, magentoönce boş bir db oluşturmanız gerekir .
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.