Eğitimler

MySQL veritabanı ve kullanıcı oluşturma

Bu adım adım eğitimde, MySQL veritabanını nasıl oluşturacağınızı, özel kullanıcı tanımlamayı, erişim izinlerini ayarlamayı ve sitenizden veritabanına nasıl bağlanacağınızı öğreneceksiniz.

Eğitimler

WordPress'te Error establishing a database connection hatasıyla daha önce karşılaştıysanız, veritabanı oluşturmanın ve doğru şekilde yapılandırmanın ne kadar kritik olduğunu bilirsiniz. Neredeyse tüm dinamik web siteleri — e-ticaret mağazalarından kişisel bloglara kadar — içerik, ayarlar ve kullanıcı bilgilerini depolamak için bir MySQL veritabanına ihtiyaç duyar. Ancak veritabanı oluşturmak sadece bir düğmeye tıklamak değildir; doğru kullanıcıyı oluşturmanız, erişim izinlerini hassas bir şekilde ayarlamanız ve ardından site tarafından bağlantıyı kurmanız gerekir. Bu makalede, bu işlemi hatasız bir şekilde nasıl yapacağınızı adım adım öğreneceksiniz.

Veritabanı Oluşturma Ön Koşulları

Başlamadan önce, hosting kontrol panelinize erişiminiz olduğundan emin olun. Hosting şirketine bağlı olarak, kontrol paneli cPanel, DirectAdmin veya özel bir panel olabilir. Tüm bu panellerde, veritabanı yönetim aracı genellikle MySQL Databases veya Database Manager gibi adlarla bulunur.

Ayrıca aşağıdaki bilgilere ihtiyacınız olacak:

  • Kontrol paneli ana kullanıcı adı ve şifresi
  • Sitenin çalıştığı alan adı veya alt alan adı
  • WordPress kullanıyorsanız, gerekli PHP ve MySQL sürümü (genellikle MySQL 5.7 veya 8.0)

Önemli not: Siteniz paylaşımlı hosting üzerindeyse, genellikle hosting kullanıcı adının ön eki veritabanı adına eklenir. Örneğin, kullanıcı adınız srv_ali ise, veritabanı adınız srv_ali_wp gibi bir şey olacaktır. Bu bir güvenlik kısıtlamasıdır ve sonraki ayarlarda buna dikkat etmelisiniz.

Kontrol Panelinde Veritabanı ve Kullanıcı Oluşturma Adımları

Bu bölümde cPanel kullandığınızı varsayıyoruz, ancak adımlar DirectAdmin ve özel panellerde çok benzerdir.

1. Yeni Veritabanı Oluşturma

  1. Kontrol paneline giriş yapın ve MySQL Databases bölümünü açın.
  2. Create New Database alanında, veritabanı için istediğiniz bir ad girin. Projeyle ilgili bir ad seçmek daha iyidir, örneğin shop veya blog.
  3. Create Database düğmesine tıklayın. İşlemin başarılı olduğuna dair bir mesaj göreceksiniz.

Veritabanınızın tam adı artık srv_ali_shop gibi bir şey olacaktır. Bu adı not edin; sonraki adımlarda ihtiyacınız olacak.

2. MySQL Kullanıcısı Oluşturma

Şimdi bu veritabanına bağlanmak için ayrı bir kullanıcı oluşturmalısınız. Veritabanına bağlanmak için asla hosting ana kullanıcısını kullanmayın; bu yaygın bir güvenlik hatasıdır.

  1. Aynı sayfada Add New User bölümüne gidin.
  2. Bir kullanıcı adı seçin, örneğin shop_user.
  3. Güçlü bir şifre seçin. Büyük ve küçük harfler, sayılar ve sembollerin bir kombinasyonunu kullanın. Generate Password düğmesinden yardım alabilirsiniz.
  4. Create User düğmesine tıklayın.

Kullanıcınızın tam adı da hosting ön ekiyle oluşturulur, örneğin srv_ali_shop_user. Bu adı ve şifreyi güvenli bir yerde saklayın.

3. Kullanıcıya Erişim İzinleri Atama

Veritabanı ve kullanıcı oluşturmak tek başına yeterli değildir; kullanıcıyı veritabanına bağlamanız ve erişim seviyesini belirlemeniz gerekir.

  1. Add User to Database bölümünde, açılır menülerden oluşturduğunuz kullanıcıyı ve veritabanını seçin.
  2. Add düğmesine tıklayın.
  3. Sonraki sayfada, bir izinler (Privileges) listesi görüntülenir. Çoğu site için ALL PRIVILEGES seçeneğini seçin. Bu seçenek SELECT, INSERT, UPDATE, DELETE ve diğer izinleri içerir.
  4. Make Changes düğmesine tıklayın.

Siteniz yalnızca veri okuma gerektiriyorsa (örneğin, bir tanıtım sitesi), yalnızca SELECT seçeneğini seçebilirsiniz. Ancak WordPress ve çoğu içerik yönetim sistemi için tam erişim gereklidir.

Yaygın hata: Birçok kullanıcı erişim izinlerini ayarlamaz ve WordPress kurulumundan sonra Access denied for user hatasıyla karşılaşır. Bu hatayı görürseniz, izinler bölümüne geri dönün ve kullanıcının veritabanına eklendiğinden ve ALL PRIVILEGES iznine sahip olduğundan emin olun.

Siteyi Veritabanına Bağlama

Artık veritabanı ve kullanıcı hazır olduğuna göre, siteyi veritabanına bağlamanız gerekir. Bağlantı yöntemi sitenizin türüne bağlıdır.

WordPress'te Bağlantı

WordPress'te wp-config.php dosyası sitenin kök dizininde bulunur. Aşağıdaki değerleri kendi bilgilerinizle değiştirin:

define('DB_NAME', 'srv_ali_shop');
define('DB_USER', 'srv_ali_shop_user');
define('DB_PASSWORD', 'YourStrongPassword');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8mb4');
define('DB_COLLATE', '');

DB_HOST değeri genellikle localhost'dur, ancak bazı hostinglerde mysql.servernet.ir gibi farklı bir adres olabilir. Bu bilgiyi hosting sağlayıcınızın yardım bölümünden bulabilirsiniz.

PHP'de Bağlantı (Özel Site)

PHP ile özel bir site yazdıysanız, PDO ile bağlanmak için aşağıdaki kodu kullanın:

<?php
$host = 'localhost';
$dbname = 'srv_ali_shop';
$user = 'srv_ali_shop_user';
$pass = 'YourStrongPassword';

try {
    $pdo = new PDO("mysql:host=$host;dbname=$dbname;charset=utf8mb4", $user, $pass);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Bağlantı başarılı";
} catch (PDOException $e) {
    die("Bağlantı hatası: " . $e->getMessage());
}
?>

mysqli yerine PDO kullanmanız önerilir çünkü daha güvenlidir ve hazır sorguları (Prepared Statements) destekler.

Bağlantıyı Test Etme ve Sorun Giderme

Ayarlardan sonra bağlantıyı mutlaka test edin. En basit yol, bir test dosyası oluşturup tarayıcıda açmaktır.

  1. Sitenin kök dizininde test_db.php adında bir dosya oluşturun.
  2. İçine PDO bağlantı kodunu yerleştirin.
  3. Dosyayı tarayıcıdan açın. "Bağlantı başarılı" mesajını görürseniz, her şey doğru demektir.
  4. Site güvenliğini korumak için test dosyasını hemen silin.

Yaygın Hatalar ve Çözümleri

  • Unknown database hatası: Veritabanı adını yanlış girmişsiniz. Hosting ön ekli tam adı kontrol edin.
  • Access denied hatası: Şifre yanlış veya kullanıcı veritabanına eklenmemiş. İzinleri tekrar kontrol edin.
  • Connection refused hatası: DB_HOST değeri yanlış. localhost kullanıyorsanız ve çalışmıyorsa, hosting destek ile iletişime geçin.
  • Too many connections hatası: Siteniz yüksek trafik alıyorsa, eşzamanlı bağlantı sınırına ulaşmış olabilirsiniz. Bu sorun genellikle hosting planını yükselterek veya sorguları optimize ederek çözülür.

Veritabanı için Güvenlik İpuçları

Veritabanı ve kullanıcı oluşturduktan sonra, birkaç basit ama etkili güvenlik önlemi alın:

  • Güçlü bir şifre kullanın ve periyodik olarak değiştirin.
  • Asla 123456 gibi varsayılan veya basit şifreler kullanmayın.
  • Siteniz yalnızca bir veritabanı kullanıyorsa, kullanıcıyı yalnızca o veritabanıyla sınırlandırın ve diğer veritabanlarına erişim vermeyin.
  • wp-config.php dosyasını genel erişimden koruyun. Genellikle hostingler bunu otomatik yapar, ancak emin değilseniz aynı dizinde bir .htaccess dosyası oluşturun ve şu satırı ekleyin:
<Files wp-config.php>
Order Allow,Deny
Deny from all
</Files>

Ayrıca phpMyAdmin kullanıyorsanız, işiniz bittikten sonra hesabınızdan çıkış yaptığınızdan emin olun.

Özet

Kontrol panelinde MySQL veritabanı ve kullanıcı oluşturmak karmaşık bir iş değildir, ancak dikkat gerektirir. Bu eğitimdeki adımları izleyerek — veritabanı oluşturma, kullanıcı oluşturma, erişim izinleri atama ve siteden bağlanma — bu işlemi hatasız bir şekilde yapabilirsiniz. En önemli nokta, adları ve şifreleri doğru not etmek ve erişim izinlerini sitenin gerçek ihtiyacına göre ayarlamaktır. Herhangi bir adımda sorunla karşılaşırsanız, önce hatayı dikkatlice okuyun ve ardından sorun giderme bölümünde belirtilen çözümleri deneyin. Son olarak, hosting sağlayıcınız yönetilen veritabanı hizmetlerini destekliyorsa — ServerNet'in hosting planlarında sunduğu gibi — en güvenilir yöntemi izlemek için o hizmetin resmi kılavuzunu da kullanabilirsiniz.

ServerNet Destek

ServerNet mühendislik ve yayın ekibi — altyapı, ağ ve web barındırma uzmanları.

WordPress Hosting
Paylaş:

Yorumlar 0

Henüz yorum yok — ilk siz olun!

Yorum bırakın

İlgili hizmet

WordPress Hosting

LiteSpeed Enterprise ve NVMe üzerinde WordPress'e özel altyapı — otomatik kurulum, güvenli güncelleme, staging ve sizi Google'da üstte tutan önbellek.