MySQL 5 problem sa instalacijom
Instalirao sam MySQL 5 u lokalu i pojavio mi se cudan problem.
Sve baze su ostale, sve tabele su tu, ali se promenila struktura tabele. Neka polja su jednostavno skracena. Na primer imam polje: show_abbr koje je CHAR(4) [proverio sam, online je stvarno tako], a sada mi je VARCHAR(1). Polje title je online VARCHAR(255) sada mi je VARCHAR(85). Sta je moglo da se desi? |
A kojom metodom si importovao stare baze?
|
ma nisam nista importovao, samo je ostao stari "data" folder, kao i uvek do sada. Kad god sam upgradeovao, deinstaliram stari mysql, ostane data, onda instaliram novi koji cita isti data. I uvek je radilo bey problema.
|
To je jedna od posljedica upgradea na novu verziju.
Naime, u ranijim verzijama je velicina (size) VARCHAR ili CHAR kolone oznacavala broj bajtova, a u novoj verziji oznacava broj znakova. Dakle, ako si ranije imao VARCHAR(255) - to znaci da je u tu kolonu moglo stati 255 byteova. Posto kod npr. UTF8 imas multibyte znakove, onda ti je velicina kolone skracena po principu: 255 byteova/max. broj byteova u tvom multibyte charsetu = nova velicina kolone Posto ti vjerovatno imas bazu sa podesenim UTF8 charsetom, onda ti je novi MySQL server "skratio" te kolone. Slican problem se desava i sa preciznoscu FLOAT kolone. Ako ti treba bas ta odredjena velicina, onda je jedino rjesenje da prepravis tu kolonu: Kôd:
ALTER TABLE tabela MODIFY ime_kolone VARCHAR(255); |
Citat:
|
@bluesman, e pa zato sam te i pitao, ja sam isto uradio pre nekih pola godine, stim sto je meni PhpMyAdmin prikazivao gresku za tabele sa verzije4..
Od tada samo stari dobri dump. |
Dejane, ne mogu da verujem :)
Opet nije mi jasno koji je to mozak smislio, zasto nisu ostavili 255? Opet, zasto je skraceno polje CHAR(4) na VARCHAR(1). Alter table nije problem, ali je problem sto su meni sve tabele u svim bazama tako srkracivane... sta sad? Osim dump, prepravljanja, drop, import sve ponovo. |
Ko se jednom tako opece... Samo sto sam ja davno bio biser, odradio innodb bazu, i po "proverenom" metodu, iskopirao data folder... Kad ja tamo, a ono medjutim, na novom serveru ni jedna tabela nije citljiva (!!). Naravno, tad nisam bas tacno znao cemu sluze ibdata* fajlovi :P
Pa me onda jednom phpmyadmin urnisao... Exportovao db dump, ali nijedna tabela nije imala auto_increment na primary key polju nakon importa... Kakve sam grimase pravio dok nisam shvatio o cemu se radi... Od tada, mysqldump+plain mysql klijent i glava me ne boli... |
@bluesman: Ma poceli su komplikovati kao i u Oracleu.
Te izmjene, siroj masi ne bas poznate (doduse, sve ima u dokumentaciji), unose dosta zabune i nezadovoljstva kod korisnika. Sjecas li se samo promjene u nacinu autenfikacije od verzije 4.0.18 ili 4.1 (ne sjecam se tacno), kad su se mnogi zalili da se ne mogu spojiti vise na bazu (hint: --old-password)? Mene je Oracle vec visestruko razocarao, a nadam se da MySQL jos nece u toj mjeri. Hm, mogao bih se poceti baviti PostgreSQL-om. :1064: |
Da, to sa old-password je bas bio uzas, ali kao, negde mora da se presece. Opet, ne razumem potrebu da se menjaju tabele?
Sto se tice pgsql, i oni ce doci na isto cim dodju do "community" i "enterprise" verzije ... to valjda tako ide. |
hm, evo upravo sam dovuko 'sirovu' bazu sa servera, gde je mysql 4.1, i stavio je na localhost gde imam mysql 5.0.26.
znaci bas kopirao fajlove, *.MYD, *.MYI, *.frm, i db.opt. startovao sam mysql, sve normalno radi, surfujem po mom sajtu na localhostu, postujem... nije se skratilo ni jedno polje... :1050: |
Vreme je GMT +2. Trenutno vreme je 23:25. |
Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.