[ boguda @ 22.04.2016. 14:28 ] @
Pozdrav
treba neku staru bazu podataka MySQL sa MYD I MYI fajlovima da ubacim u novu bazu.
Koristim phpmyadmin a sa ovim starijim tipom se nikada do sada nisam susretao.
Pretpostavljam da je moguce to prekonvertovati pa me interesuje kako
[ nkrgovic @ 22.04.2016. 14:30 ] @
1) Ne koristi phpmyadmin ako mozes. :D

2) ALTER TABLE x ENGINE = InnoDB je konverzija u okviru postojece baze.

P.S. Ako radis promenu baze, moguce da je zapravo najlakse export pa import. Ako si pocetnik imas obe opcije u mysql workbench-u.
[ bogdan.kecman @ 22.04.2016. 14:52 ] @
MYD je MyISAM tabela - fajl sa datom
MYI je od iste te myisam tabele fajl sa indexima
fali ti jos FRM fajl u kom je data za BAZU i u kom su opisane sve te tabele

to nije nista "staro" mysql i danas podrzava myisam storage engine i ako
koristis isti imaces te fajlove na disku za svaku myisam tabelu

phpmyadmin ne zna sta bi radio sa tim fajlovima

da bi ih prekonvertovao - moras prvo da ih ubacis u mysql i onda mozes
da ih konvertujes u sta oces (u startu ce ti to biti myisam tabele)

ako imas i frm fajl mnogo je lako, napravis direktorijum u datadir-u
koji se zove kako ti se zove baza, tu stavis frm fajl i myd i myi
fajlove, das im permisije za mysql i startujes mysql server i on ce
videti i bazu i tabele, ako nemas frm fajl reci moze i tada samo je malo
komplikovanije
[ boguda @ 22.04.2016. 20:43 ] @
Da imam sva tri tipa fajlova MYD MYI I frm. Kad kazem "stara" mislio sam da je davno radjena za neku desktop aplikaciju a sada bi trebalo da radi sa web aplikacijom. Nov sam sa MySQL-om pa mi nije bas jasno gde obavljam tu konverziju odnosno kako jos mogu da pristupim MySQL-u sem preko phpmyadmin-a. Ja ustvari imam samo fizicki prekopiran direktorijum sa tabelama npr: user.frm , user.MYD user.MYI, date.frm date.MYD date.MYI itd itd...

e sad jer mogu nekako samo pomocu toga da popunim neku svoju novu bazu(InnoDB).

Administrator ni ne zna kao da uradi beckup vec samo prekopira taj direktorijum.
[ bogdan.kecman @ 22.04.2016. 21:06 ] @
administratora zameni, bekap napravi sa mysqldump, a te fajlove ... pa ovako

1. ugasis mysql server
2. odes u datadir (default na rhel/centos je /var/lib/mysql moze da bude
bilo gde da ga postavis pogleda u /etc/my.cnf varijablu datadir gde
pokazuje)
3. tu ces da vidis da za sve baze koje imas na serveru imas po jedan
direktorijum, napravi novi direktorijum koji se zove bazazaboguda, u taj
direkotirum iskopiraj sve te fajlove koje imas (*.frm, *.myd, *.myi)
4. daj privilegije mysql-u na te fajlove (chown mysql:mysql
/var/lib/mysql/bazazaboguda && chown mysql:mysql
/var/lib/mysql/bazazaboguda/* )
5. startuj mysql server
6. uloguj se na mysql server
7. use bazazaboguda; show tables; select * from user limit 10;
8. sada imas u bazi "bazazaboguda" sve te tabele i u njima datu

sta bi sad zeleo da uradis? da napravis novu bazu baza1 i prebacis datu?

na primer

create database baza1 default character set 'utf8';
use baza1;
create table `user` like `bazazaboguda`.`user`;
alter table `user` engine=innodb;
insert into `user` select * from `bazazaboguda`.`user`;

a mozes i in-place samo te myisam tabele da promenis u innodb

use bazazaboguda;
alter table `user` engine=innodb;

i tako ta tabela predje u innodb
[ boguda @ 22.04.2016. 21:16 ] @
i to sve radim na kompijuteru(serveru) gde je baza trenutno? I da li MySQL ima neki softwer(interfejs) kao recimo ms server management studio ili phpmyadmin ili to radim iz command promt-a?
Recimo kad si u koraku 4 reko "daj privilegije..." u phpmyadmin ima opcija Privileges ?
[ bogdan.kecman @ 22.04.2016. 21:25 ] @
pa vidi ovako, ono sto sam ti ja napisao podrazumeva da imas
najosnovnije znanje o tome kako operativni sistem i database server rade
... sad sve ispod toga je vec mala skola racunara jbg :( ja za to nisam
spreman, mozda ima neki kolega ovde koga manje mrzi

za pocetak - zaboravi phpmyadmin to g123vno od softwarea nikad nikom
nista korisno nije donelo

"gde" ces to da radis, pa de oces, samo mora imas instailran mysql server

privilegije dajes "servisu" da moze da pristupi "fajlovima" ...
privilegije o kojima prica phpmyadmin su za database usera da pristupi
podacima

mysql ima "management" to ti je workbench, ali to sto ti hoces da uradis
moras da uradis rucno, kao sto si i te fajlove pokupio rucno, niti je to
pravilan nacin da se uradi bekap niti to sto sam ti rekao da uradis nije
pravilan nacin da se povrati bekap, al kad vec imas takve fajlove onda
ih rucno gurni tu de treba i zavrsi posao
[ boguda @ 23.04.2016. 22:18 ] @
Hvala na savetima svakako, mislim da kontam.
Nema to mnogo veze sa samom bazom vec fajlovima kao takvim.

U ponedeljak cu pokusati da primenim savet
hvala jos jednom