PHP&MYSQL Tabanlı Siteler için taşınma El Kitabı /TELNET/SSH/MySQL 4.1/DUM/UTF-8

 Gönülçelen Ailesi MSN'de! Listeye katılmak için tıklayın. Sohbet odasına yönetici başvuruları
MSN'de Gönülçelen'i kullanmak için geniş anlatım.
Cevapla 
 
Derecelendir
  • 5 Oylar - 2 Yüzde
  • 1
  • 2
  • 3
  • 4
  • 5
PHP&MYSQL Tabanlı Siteler için taşınma El Kitabı /TELNET/SSH/MySQL 4.1/DUM/UTF-8
Yazar Mesaj
YALNIZLIK Bayan
ßizi satnLarı ßizßeL$e veririz
********
Administrator

Üyelik tarihi: Aug 2007
Mesajlar: 9,873
Rep Puanı: 5454 - Rep ver
Şehir: İstanbul
Ruh Halim: Mesgul
Durum: Çevrimdışı
Mesaj: #1
PHP&MYSQL Tabanlı Siteler için taşınma El Kitabı /TELNET/SSH/MySQL 4.1/DUM/UTF-8
karşılaştığım problemleri ve bulabildiğim çözüm yollarını aktarmaya çalışayım. Forumda bir çok kaynaktan faydalandım, bu noktadaki bilgileri bu konu altına toplarsak taşınma ile ilgili sorun yaşayan arkadaşların zaman kaybını önleriz..

Hatalarım var ise düzeltiniz, tecrübeleriniz var is ekleyiniz.

HAZIRLIK

Kendi makinanızdan sunucuya, yada mevcut sunucunuzdan başka bir sunucuya taşınmadan önce ilk yapılması gereken sağlam yedekler almak.

En önemlisi ise yeni sunucuya %100 kurulumu yapan kadar eski sisteminizi kesinlikle silmeyin

YEDEK ALMA (DOSYALAR)

Önceik sitenizin dosyalarını yedekleyiniz, eğer imkanınız varsa kısa resim,html,php vb. dosylarınıza kısa göz atın çünkü ftp'den download sırasında bağlantı hatalarından dolayı dosyalarınız eksik gelebilir.
Seri çalışmak için ve hatalardan uzak olmak için yedek klasorunuze yada arsiv dosyanıza mutlaka tarih atın, 1 den fazla yedeğiniz varsa karışıklığa sebeb vermemek için.

İPUCU => Çok büyük bir siteye sayipseniz zaman kazanmak için sitenizi komple tekbir arsiv dosyasinda sıkıstırıp sadece bu dosyayı FTP'ye atarak ordan açtırmanız size zaman kazandıracaktır. Tabiki bunun için sunucunuza TELNET yada SSH bağlantınız olması gerekiyor.
telnet bağlantısından sonra sitenizin dosylarını yedeklemek için aşağıdaki komutu veriniz.



Bu komuttan sonra sunucu yedeklerim.tar dosyasını oluşturarak FTP'ye atacaktır.

YEDEK ALMA (VERİTABANI)

Genelde taşınma sırasında vt yedeği alırken sorunlar çıkabiliyor. Bu nedenle verilerin güvenli ve temiz bir şekilde yedeklenmesi için PMA vb. programlar yerine direk Telnet yada SSH kullanmak oldukça sağlıklı. Dirde veritabanı büyükse kesinlikle konsol kullanmanızı öneririm.

Telnet yada ssh ile sunucunuza bağlandıktan sonra aşağıdaki komutu giriniz bu vtyedek.sql adında bir dosya oluşturarak FTP'nize atacaktır.

PHP Kod:
mysqldump --add-drop-table -h SUNUCU -u KULLANICI -pŞİFRE VERİTABANI vtyedek.sql 


pŞİFRE birleşik yazıldığına dikkat edin.

İPUCU => Forumdan edindiğim bilgiye göre yedek alırken karakter seti belirtmek daha sağlıklı oluyormuş. bunun için.

PHP Kod:
mysqldump --add-drop-table -h SUNUCU -u KULLANICI -pŞİFRE --default-character-set=latin5 VERİTABANI vtyedek.sql 


YENİ SUNUCUYA AKTARIM (DOSYALAR)

VT ve Dosyalarımız artık birer arşiv dosyası olarak elimizde şimdi yeni sunucumuza FTP bağlantısı yaparak vtyedek.sql ve yedeklerim.tar dosylarını sunucuya upload edebiliriz. DAHA SONRA BU DOSYALARI SİLMEYİ UNUTMAYINIZ.

yedeklerim.tar Dosyasını açmak için yeni sunuya Telnet yada SSH bağlantısı kurunuz.

Bu komut ile dosyamızı açabiliriz.

PHP Kod:
tar -xpf yedeklerim.tar 

Devamında güvenlik için bu dosyayı silmede fayda var silmek için

PHP Kod:
rm yedeklerim.tar 

Komutunu kullanınız.

Dosyalarımız ftp'de hazır tabiki arşivi silmeden önce dosyaları kontrol etmekte fayda var.

YENİ SUNUCUYA AKTARIM (VERİTABANI)

vtyedek.sql dosyamızı zaten FTP'ye atmıştık şimdi sitemizin paneli aracılığı ile oluşturduğumu veritabanımıza bu sql dosyasını yazabiliriz. Telnet yada SHH'ya bu konutu veriniz.

PHP Kod:
mysql -h SUNUCU -u KULLANICI -pŞİFRE VERİTABANI vtyedek.sql 

Bu komut ile vtyedek.sql yedek dosyamızı veritabanımıza yazmış olduk.

İPUCU => Forumdan edindiğim bilgiye göre veritabanına yazarkende karakter seti belirtek sağlıklı oluyormuş yada panelden oluşturduğunuz veritabanının karakter setini ayarlayabilirsiniz.

Karakter Setini ayarlamak için

PHP Kod:
ALTER DATABASE `veritabaniadi` DEFAULT CHARACTER SET latin5 COLLATE latin5_turkish_ci 

Veritabanını Yazarken Karakter Belirmek İçin
PHP Kod:
mysql -h SUNUCU -u KULLANICI -pŞİFRE --default-character-set=latin5 VERİTABANI vtyedek.sql 

Konsoldan Latin5 Karakter Setine Sahib Veri tabanı oluşturmak için

PHP Kod:
CREATE DATABASE `veritabaniadi` DEFAULT CHARACTER SET latin5 COLLATE latin5_turkish_ci

Böyle veritabanımızıda yazdık. Şuan dosyalarımız ve veritabanımız yeni sunucuda Sitemizi Test edlim... Oda ne ? TR Karakterler yok ? $kod vb. değişenler içeren sayfalar çalışmıyor..

Eğer böyle bir sorun varsa , ki olabilir. şu yolu izleyiniz. Sitenizin veritabanına bağlanan kodunun altına

PHP Kod:
mysql_query("SET NAMES 'latin5'"); 
mysql_query("SET CHARACTER SET latin5"); 
mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'"); 


bunları ekleyiniz bu TR karakter sorununu çözecektir. Tabiki safyanızın tepesinde bunlar olmalı...

PHP Kod:
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9"

Eğer sitenizde bulunan aşağıdaki vb. kodlar bulunan sayfalar çalışmıyorsa, ki buda normaldir.

PHP Kod:
?&kod=1713&islem=habersil
?&kod=1713&islem=haberduzelt 

yapmanız gerek değikenleri bu şekilde tanımlamak

PHP Kod:
$kod=$_GET['kod']; 
eğer sayfanıza çok büyükse hepsini değiştirmek biraz zaman alır bunun yerine php.ini da bulunan register_globals bölümünü on yaparak kısa bir çözüm bulunabilir.

SORULAR,,, SORUNLAR

PHP.INI DOSYASIDA NE ? NERDEN BULUCAM

sunucuda /etc/php.ini yolunda bulunuyor buna erişme şansınız varsa bir editorle acip ON yapabilirsiniz, eğer yoksa hostign şirketinden bunu taleb edin.

İPUCU => Eğer sunucu sizinsi ve benim gibi komut satırı tecübeniz az ise, Bitvise Tunnelier adında br program var bununla sunucuya bağlanıp dosyalar arasında gezebiliyorsunuz örneğin php.ini dosyasini bulup, download edip değiştirip geri upload edebilirsiniz.

VERİTABANIM 80 MB PMA İLE DUMP EDEMİYORUM NE YAPICAM

bunun için bigdump adında tek dosyalık bir php yazılımı var 80 mblik dosyayı ftp'ye atıp, bu yazılama gösterdiğiniz o sizin yerinize bunu yapıyor. tabiki en sağlıklısı yukardaki anlattığımız telnet yada ssh kullanmak.

MySQL 4.1.xxx KULLANIYORUM KARAKTER SORUNUM VAR.

PHP Kod:
etc/my.cnf ya da /etc/mysql/my.cnf 

içine
PHP Kod:
default-character-set=latin5 

ekleyiniz.

MySQL karakter seti: UTF-8 Unicode (utf8) BUDA NE

Tr karakterde sorun çıkıyorsa

tabloları ve veritabanını "latin5_turkish_ci" olarak ayarlayın

ayrıca bu kodları vt bağlantı dosyanıza ekleyin.

PHP Kod:
mysql_query("SET NAMES 'latin5'"); 
mysql_query("SET CHARACTER SET latin5"); 
mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'"); 
YALNIZLIK diyor ki:
سْــــــــــــــــــــــمِ اﷲِارَّحْمَنِ ارَّحِي
...Ben beni bırakırsam,sen beni bırakma yarab...

Herkes Gülüşümü Görüyor
Kimse savaşımı görmüyor.
Herkes sesimi duyuyor
Düşündügümü kimse bilmiyor.
Herkes yazdiklarimi okuyor
Gözyaşlarimi kimse görmüyor.
Herkes beni tanidigini saniyor
Ama kimse benim kim oldugumu bilmiyor.
06-02-2008 19:18:27
Web Sayfasını Ziyeret Edin Tüm Mesajlarını Bul Alıntı Yaparak Cevapla
« Önceki | Sonraki »
Cevapla 


Forum Atla:

1 2 3 64 131 266 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 286 283 284 285 287 288 289 290 291 292 293 262 264 267 263 294 295 296 297 298 4 255 256 5 6 7 251 8 71 260 75 72 73 74 76 77 78 79 80 81 82 83 84 9 10 12 14 13 17 18 16 236 11 15 19 20 21 42 43 44 45 55 28 22 27 95 31 30 32 33 34 35 36 37 38 39 40 41 63 233 52 103 234 248 46 48 125 47 49 50 261 85 86 87 88 89 90 91 141 23 24 25 129 133 132 134 26 253 100 220 232 235 92 29 110 93 96 94 97 98 99 126 128 101 65 66 67 68 69 70 130 146 147 148 149 150 151 212 213 214 209 221 222 223 224 225 226 117 118 119 120 121 122 123 124 102 104 105 106 107 108 109 145 111 112 113 114 115 116 127 56 57 58 59 60 61 62 51 53 54 252 185 186 210 187 211 188 215 216 217 218 219 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 230 231 152 184 153 154 155 156 157 158 159 160 161 162 163 164 165 166 178 167 168 169 170 171 172 173 174 175 176 177 179 180 181 182 183 227 237 243 238 239 240 241 242 244 245 246 247 250 142 143 f1 f2 f3 f64 f131 f266 f268 f269 f270 f271 f272 f273 f274 f275 f276 f277 f278 f279 f280 f281 f282 f286 f283 f284 f285 f287 f288 f289 f290 f291 f292 f293 f262 f264 f267 f263 f294 f295 f296 f297 f298 f4 f255 f256 f5 f6 f7 f251 f8 f71 f260 f75 f72 f73 f74 f76 f77 f78 f79 f80 f81 f82 f83 f84 f9 f10 f12 f14 f13 f17 f18 f16 f236 f11 f15 f19 f20 f21 f42 f43 f44 f45 f55 f28 f22 f27 f95 f31 f30 f32 f33 f34 f35 f36 f37 f38 f39 f40 f41 f63 f233 f52 f103 f234 f248 f46 f48 f125 f47 f49 f50 f261 f85 f86 f87 f88 f89 f90 f91 f141 f23 f24 f25 f129 f133 f132 f134 f26 f253 f100 f220 f232 f235 f92 f29 f110 f93 f96 f94 f97 f98 f99 f126 f128 f101 f65 f66 f67 f68 f69 f70 f130 f146 f147 f148 f149 f150 f151 f212 f213 f214 f209 f221 f222 f223 f224 f225 f226 f117 f118 f119 f120 f121 f122 f123 f124 f102 f104 f105 f106 f107 f108 f109 f145 f111 f112 f113 f114 f115 f116 f127 f56 f57 f58 f59 f60 f61 f62 f51 f53 f54 f252 f185 f186 f210 f187 f211 f188 f215 f216 f217 f218 f219 f189 f190 f191 f192 f193 f194 f195 f196 f197 f198 f199 f200 f201 f202 f203 f204 f205 f206 f207 f208 f230 f231 f152 f184 f153 f154 f155 f156 f157 f158 f159 f160 f161 f162 f163 f164 f165 f166 f178 f167 f168 f169 f170 f171 f172 f173 f174 f175 f176 f177 f179 f180 f181 f182 f183 f227 f237 f243 f238 f239 f240 f241 f242 f244 f245 f246 f247 f250 f142 f143