Buyukweb
MySQL Veritabanı Yönetimi: Temel Sorgular ve Optimizasyon

MySQL Veritabanı Yönetimi: Temel Sorgular ve Optimizasyon

MySQL veritabanı yönetimi için temel SQL sorguları, indeksleme, yedekleme ve performans optimizasyon teknikleri hakkında kapsamlı rehber.

Büyükweb Teknik Ekibi9 Eylül 20247 dakika okuma

MySQL Nedir?

MySQL, dunyada en yaygin kullanilan acik kaynakli iliskisel veritabani yonetim sistemidir (RDBMS). Web uygulamalarindan kurumsal sistemlere kadar genis bir kullanim alanina sahip olan MySQL, WordPress, Joomla ve Drupal gibi populer CMS platformlarinin tercih ettigi veritabanidir.

MySQL Temel Kavramlar

  • Veritabani (Database): Verilerin organize edildigi yapitasi
  • Tablo (Table): Satirlar ve sutunlardan olusan veri depolama birimi
  • Satir (Row): Tek bir veri kaydi
  • Sutun (Column): Veri ozelligi/alani
  • Birincil Anahtar (Primary Key): Her kaydi benzersiz tanimlayan sutun
  • Foreign Key: Tablolar arasi iliski kuran anahtar

MySQL Temel Sorgular

Veritabani Islemleri

-- Veritabani olusturma
CREATE DATABASE site_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- Veritabani listeleme
SHOW DATABASES;

-- Veritabani secme
USE site_db;

-- Veritabani silme
DROP DATABASE site_db;

Tablo Islemleri

-- Tablo olusturma
CREATE TABLE kullanicilar (
    id INT AUTO_INCREMENT PRIMARY KEY,
    ad VARCHAR(100) NOT NULL,
    email VARCHAR(255) UNIQUE NOT NULL,
    sifre VARCHAR(255) NOT NULL,
    olusturma_tarihi TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- Tablolari listeleme
SHOW TABLES;

-- Tablo yapisini gorme
DESCRIBE kullanicilar;

Veri Ekleme (INSERT)

INSERT INTO kullanicilar (ad, email, sifre) VALUES ('Ahmet Yilmaz', 'ahmet@ornek.com', 'hash_sifre');

Veri Sorgulama (SELECT)

-- Tum kayitlari getir
SELECT * FROM kullanicilar;

-- Belirli sutunlari getir
SELECT ad, email FROM kullanicilar WHERE id = 1;

-- Siralama
SELECT * FROM kullanicilar ORDER BY olusturma_tarihi DESC;

-- Limit
SELECT * FROM kullanicilar LIMIT 10 OFFSET 20;

Veri Guncelleme (UPDATE)

UPDATE kullanicilar SET ad = 'Ahmet Y.' WHERE id = 1;

Veri Silme (DELETE)

DELETE FROM kullanicilar WHERE id = 1;

MySQL Optimizasyon Ipuclari

Index Kullanimi

-- Index olusturma
CREATE INDEX idx_email ON kullanicilar(email);

-- Birlesik index
CREATE INDEX idx_ad_email ON kullanicilar(ad, email);

Sorgu Analizi

EXPLAIN SELECT * FROM kullanicilar WHERE email = 'test@ornek.com';

Performans Ayarlari

my.cnf/my.ini dosyasinda onemli parametreler:

innodb_buffer_pool_size = 1G
query_cache_size = 64M
max_connections = 150
innodb_log_file_size = 256M

MySQL Yedekleme

# Veritabani yedekleme
mysqldump -u root -p site_db > yedek.sql

# Geri yukleme
mysql -u root -p site_db < yedek.sql

Buyukweb Hosting ve MySQL

Buyukweb hosting paketlerinde MySQL/MariaDB veritabani standart olarak sunulmaktadir. cPanel ve Plesk uzerinden phpMyAdmin ile gorsel veritabani yonetimi yapabilirsiniz.

MySQL Yedekleme ve Replikasyon

Veritabani yedekleme stratejisi veri guvenligi icin kritik oneme sahiptir. mysqldump araci ile mantiksal yedek alabilirsiniz. Buyuk veritabanlari icin --single-transaction parametresi ile tutarli yedek alma islemini tablo kilitlemeden gerceklestirebilirsiniz. Daha hizli yedekleme icin Percona XtraBackup aracini kullanarak fiziksel yedek alabilirsiniz. Yedekleme islemlerini cron ile zamanlamaniz tavsiye edilir.

MySQL replikasyon yapilandirmasi ile veri yedekliligi ve okuma performansi artisi saglayabilirsiniz. Master-slave replikasyonda master sunucu yazma islemlerini, slave sunucular ise okuma islemlerini karsilar. Binary log formatini ROW olarak ayarlamak en guvenilir replikasyon yontemidir. GTID tabanli replikasyon ile failover islemlerini kolaylastiiin. Slow query log ile yavas sorgulari tespit edin ve EXPLAIN komutu ile sorgu planlarini analiz ederek indeks optimizasyonu yapin. Buyukweb.com VDS sunuculari MySQL replikasyon yapilandirmasi icin yeterli kaynak ve dusuk gecikme suresi sunar.

Sonuc

MySQL veritabani yonetimi web uygulamalarinin performansi icin kritik oneme sahiptir. Dogru indeksleme, sorgu optimizasyonu ve duzenli yedekleme ile veritabaninizin verimli calismaisini saglayabilirsiniz. Slow query log analizi ile performans darubogazlarini tespit edebilir ve iyilestirmeler yapabilirsiniz. Buyukweb VDS paketlerinde MySQL kurulumu ve optimizasyonu icin teknik destek sunulmaktadir.


Ilgili Buyukweb Hizmetleri:


Veritabani Performans Optimizasyonu

Veritabani web uygulamalarinin kalbidir.

MySQL/MariaDB Tuning

innodb_buffer_pool_size'i RAM'in %60-70'ine ayarlayin. slow_query_log ile yavas sorgulari tespit edin. max_connections optimize edin.

Indeksleme

WHERE, JOIN, ORDER BY sutunlarina indeks ekleyin. EXPLAIN ile sorgu planlari analiz edin. Composite index kullanin.

Baglanti Havuzu

ProxySQL ile gelismis baglanti yonetimi. Connection pooling ile maliyet azaltma. Persistent connections kullanin.

Replikasyon

Master-Slave ile okuma yukunu dagitin. Galera Cluster ile multi-master yuksek erisilebilirlik. Semi-senkron replikasyon degerlendirin.

Yedekleme

mysqldump mantiksal, xtrabackup fiziksel yedek. Binary log ile point-in-time recovery. Incremental yedekleme ile tasarruf.

Sik Sorulan Sorular

MySQL mi PostgreSQL mi?

MySQL cogu web uygulamasi ile uyumlu. PostgreSQL gelismis veri tipleri ve JSON icin ideal. CMS'ler genelde MySQL kullanir.

Veritabanim buyudu ne yapmaliyim?

Gereksiz verileri temizleyin, tablo optimize edin, arsivleme yapin, partitioning kullanin.

Ne siklikla yedek almaliyim?

Kritik veritabanlari saatlik, standart siteler gunluk. Buyuk degisikliklerden once manuel yedek.

Sonuc

Veritabani optimizasyonu uygulama performansini dogrudan etkiler. Indeksleme, tuning ve yedekleme ile veri katmaninizi guclendirin.

Veritabani Boyut Yonetimi

Buyuk Tablolar icin Stratejiler

  • Partitioning: Tarihe gore tablolari bolumlendirin. Sorgu performansi artar.
  • Arsivleme: Eski verileri arsiv tablolarina tasiyin.
  • Sikistirma: InnoDB sikistirmasi ile disk kullanimini %50-75 azaltin.

WordPress Veritabani Optimizasyonu

  • wp_options autoload: Gereksiz autoload kayitlari temizleyin.
  • Post revisions: wp-config.php'de WP_POST_REVISIONS sinirlayin.
  • Transient veriler: Suresi dolmus verileri duzenli temizleyin.
  • Spam yorumlar: Toplu silin.

Veritabani Guvenlik

  • Varsayilan portu degistirin
  • Uygulama bazli kullanici olusturun
  • Minimum gerekli yetki verin
  • SSL ile baglanti sifreleyin
  • Duzenli guvenlik taramasi yapin

Hosting ve Sunucu Terimleri Sozlugu

Terim Aciklama
VDS Virtual Dedicated Server - Sanal ozel sunucu
NVMe SSD Non-Volatile Memory Express - En hizli disk teknolojisi
LiteSpeed Yuksek performansli web sunucu yazilimi
CloudLinux Paylasimli hosting icin kaynak izolasyon isletim sistemi
cPanel Populer web hosting kontrol paneli
Plesk Web hosting ve sunucu yonetim paneli
KVM Kernel-based Virtual Machine - Tam sanallastirma teknolojisi
DDoS Distributed Denial of Service - Dagitik hizmet engelleme saldirisi
SSL/TLS Veri iletisimini sifreleyen guvenlik protokolu
TTFB Time to First Byte - Sunucu yanit suresi
CDN Content Delivery Network - Icerik dagitim agi
WAF Web Application Firewall - Web uygulama guvenligi duvari
IOPS Input/Output Operations Per Second - Disk performans olcusu
Uptime Sunucunun kesintisiz calisma suresi yuzdesi
Bandwidth Veri transfer kapasitesi

Bu terimleri anlamak, hosting ve sunucu hizmetlerini daha bilinçli secmenize yardimci olur. Detayli bilgi icin Buyukweb blog yazilarini takip edin veya teknik destek ekibimize danisIn.

Teknik Destek ve Yardim Kanallari

Buyukweb olarak musterilerimize birden fazla destek kanali sunuyoruz:

Canli Destek (Tawk.to)

Web sitemiz uzerinden 7/24 canli destek ile aninda yardim alin. Teknik sorulariniz, fatura islemleriniz ve genel bilgi talepleriniz icin canli destek ekibimiz hizmetinizdedir.

Telefon Destegi

0850 302 60 70 numarasindan hafta ici ve hafta sonu teknik destek alabilirsiniz. Acil durumlar ve karmasik sorunlar icin telefon destegi en hizli cozum yoludur.

E-posta Destegi

destek@buyukweb.com adresine detayli sorun tanimlamanizi gonderin. Ekran goruntuleri ve hata mesajlari ile birlikte gonderdiginiz talepler daha hizli cozumlenir.

Musteri Paneli

my.buyukweb.com uzerinden destek talepleri olusturun, faturalarinizi yonetin ve hizmetlerinizi kontrol edin. Ticket sistemi ile tum iletisiminiz kayit altindadir.

Bilgi Bankasi

Blog yazilarimiz ve rehberlerimiz ile sik karsilasilan sorunlarin cozumlerini kendiniz bulabilirsiniz. WordPress kurulumu, DNS ayarlari, e-posta yapilandirmasi gibi konularda adim adim rehberler mevcuttur.

Buyukweb teknik ekibi, hosting alaninda 17 yillik tecrubesi ile her turlu sorununuza profesyonel cozum sunar.

Ek Kaynaklar ve Referanslar

Konuyu daha derinlemesine ogrenimek icin asagidaki kaynaklari incelemenizi oneririz:

Buyukweb Blog

Hosting rehberleri, teknik yazilar ve sektorel analizler icin Buyukweb blogunu duzenli takip edin. Her hafta yeni icerikler yayinliyoruz.

Resmi Dokumanlar

  • cPanel Documentation: cPanel kontrol paneli kullanim kilavuzu
  • Plesk Documentation: Plesk panel yonetim rehberi
  • WordPress Codex: WordPress gelistirici dokumantasyonu
  • DigitalOcean Community: Sunucu yonetimi rehberleri
  • Linux man pages: Linux komut referansi

Topluluk Forumlar

StackOverflow, ServerFault ve Reddit r/webhosting gibi topluluklarda deneyimli kullanicilardan yardim alabilirsiniz.

Video Kaynaklar

YouTube uzerinde Turkce hosting ve sunucu yonetimi egitim videolari mevcut. Gorsel ogrenme tercih ediyorsaniz bu kaynaklari degerlendirin.

Daha fazla bilgi ve profesyonel destek icin Buyukweb teknik ekibine ulasin:

  • Telefon: 0850 302 60 70
  • E-posta: destek@buyukweb.com
  • Canli Destek: buyukweb.com
  • Panel: my.buyukweb.com

Etiketler:

#MySQL#veritabanı yönetimi#SQL sorguları#MySQL optimizasyon#indeks#mysqldump#phpMyAdmin#MariaDB

Bu yazıyı paylaş