Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Přesun adresáře /var/lib/mysql někam jinam vyřešeno  (Přečteno 1102 krát)

mka

  • Závislák
  • ***
  • Příspěvků: 1907
  • Chybovat je moje.
    • Příložany Cé Zet
Přesun adresáře /var/lib/mysql někam jinam vyřešeno
« kdy: 03 Května 2010, 12:17:14 »
Protože bych ještě nějakou dobu měl mín na desktopu kromě 10.04 funkční i 9.10 a podle potřeby bootovat jedno či druhé, chtěl jsem si přesunout mysql databázi na datový disk. Postupoval jsem následovně:
stopnul mysql
překopíroval adr. mysql s -p (abych zachoval všechny atributy souborů)
přejmenoval adr. mysql
vytvořil ve /var/lib symlink na kopii adr. mysql
nastavil mu vlastníka/skupinu také na mysql (pro jistotu)
spustil mysql.
Výsledek: fail.
daemon.log:
Kód: [Vybrat]
May  3 12:10:41 mka /etc/init.d/mysql[12747]: 0 processes alive and '/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping' resulted in
May  3 12:10:41 mka /etc/init.d/mysql[12747]: #007/usr/bin/mysqladmin: connect to server at 'localhost' failed
May  3 12:10:41 mka /etc/init.d/mysql[12747]: error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
May  3 12:10:41 mka /etc/init.d/mysql[12747]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
May  3 12:10:41 mka /etc/init.d/mysql[12747]:
messages.log:
Kód: [Vybrat]
May  3 12:10:26 mka kernel: [ 7413.055136] type=1503 audit(1272881426.265:162): operation="open" pid=12454 parent=12453 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/sys/devices/system/cpu/"
May  3 12:10:26 mka kernel: [ 7413.141787] type=1503 audit(1272881426.353:163): operation="open" pid=12475 parent=12474 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/sys/devices/system/cpu/"
May  3 12:10:26 mka kernel: [ 7413.371697] type=1503 audit(1272881426.581:164): operation="open" pid=12589 parent=12481 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/sys/devices/system/cpu/"
May  3 12:10:26 mka kernel: [ 7413.382032] type=1503 audit(1272881426.593:165): operation="mknod" pid=12589 parent=12481 profile="/usr/sbin/mysqld" requested_mask="w::" denied_mask="w::" fsuid=0 ouid=0 name="/media/disk/app/data/mysql/mka.lower-test"
May  3 12:10:26 mka kernel: [ 7413.382150] type=1503 audit(1272881426.593:166): operation="mknod" pid=12589 parent=12481 profile="/usr/sbin/mysqld" requested_mask="w::" denied_mask="w::" fsuid=0 ouid=0 name="/media/disk/app/data/mysql/mka.lower-test"
May  3 12:10:26 mka kernel: [ 7413.393379] type=1503 audit(1272881426.605:167): operation="open" pid=12589 parent=12481 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=112 ouid=112 name="/media/disk/app/data/mysql/mysql/plugin.frm"
May  3 12:10:26 mka kernel: [ 7413.436411] type=1503 audit(1272881426.646:168): operation="open" pid=12589 parent=12481 profile="/usr/sbin/mysqld" requested_mask="rw::" denied_mask="rw::" fsuid=112 ouid=112 name="/media/disk/app/data/mysql/ibdata1"
May  3 12:10:27 mka kernel: [ 7414.173770] type=1503 audit(1272881427.385:169): operation="open" pid=12601 parent=12600 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/sys/devices/system/cpu/"
May  3 12:10:28 mka kernel: [ 7415.216669] type=1503 audit(1272881428.429:170): operation="open" pid=12611 parent=12610 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/sys/devices/system/cpu/"
May  3 12:10:40 mka kernel: [ 7426.819795] type=1503 audit(1272881440.029:181): operation="open" pid=12721 parent=12720 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/sys/devices/system/cpu/"
May  3 12:10:41 mka kernel: [ 7427.856009] type=1503 audit(1272881441.065:182): operation="open" pid=12731 parent=12730 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/sys/devices/system/cpu/"
May  3 12:10:41 mka kernel: [ 7427.871561] type=1503 audit(1272881441.081:183): operation="open" pid=12740 parent=12739 profile="/usr/sbin/mysqld" requested_mask="r::" denied_mask="r::" fsuid=0 ouid=0 name="/sys/devices/system/cpu/"

Nějak mi to nebere - jak to, že to nefunguje? UTFG negativní - našel jsem
a) návody, které popisují stejný nebo podobný postup jako funkční,
b) podobné dotazy jako tento - bez odpovědi
c) hlášky, že to takhle nejde, aniž by bylo řečeno PROČ to tak nejde.

Tuší někdo?
« Poslední změna: 11 Května 2010, 09:20:13 od kiklhorn »

vlabra

  • Návštěvník
  • Příspěvků: 75
Re: Přesun adresáře /var/lib/mysql někam jinam
« Odpověď #1 kdy: 10 Května 2010, 20:58:29 »
Problém by mohl být s uživatelem mysql. Je dost pravděpodobné že v každém systému mají jiné UID. Pokud jsou jiné, musíte jedno změnit.

Taky si nejsem úplně jistý jestli je možné vytvořit socket ve složce která jde přes link.

PS: K UID (pokud nevíte)
Souborový systém ukládá v oprávnění číslo uživatele, ne jeho název.
Takhle zjistíte UID (to první číslo zleva) a GID (číslo skupiny, to druhé číslo) uživatele mysql: cat /etc/passwd | grep mysql
Kód: [Vybrat]
mmc@pc-mmc:~$ cat /etc/passwd | grep mysql
mysql:x:114:122:MySQL Server,,,:/var/lib/mysql:/bin/false
Změnu provedete pomocí sudo usermod -u 123 mysql kde 123 je UID. (uživatel nesmí být přihlášen/běžet pod ním žádný proces)

mka

  • Závislák
  • ***
  • Příspěvků: 1907
  • Chybovat je moje.
    • Příložany Cé Zet
Re: Přesun adresáře /var/lib/mysql někam jinam
« Odpověď #2 kdy: 11 Května 2010, 09:11:33 »
Dík,
problém s jinými čísly uživatelů/skupin na obou systémech řeším až teď a PostgreSQL. U MySQL mi naštěstí vyšlo stejné číslo skupiny, takže jsem upravil práva pro skupinu. Ale PG striktně trvá na vlastnictví...

Nicméně to, proč to nešlo, bylo v něčem jiném - apparmor. A ten, jak se zdá, se nějakým linkem oblbnout nedá. Takže přesun nakonec přes úpravu datadir v my.cnf a nastavení nového adr. v apparmor.

 

Provoz zaštiťuje spolek OpenAlt.