MySQL server 5.0

Založil radekzatec, 28. 08. 2009, 09:41:42

Předchozí téma - Další téma

radekzatec

Používám APACHE2, PHP5 a MySQL 5.0 vše na Lennym - stable.
Instalace probíhala přes aptitude.
Při instalaci MySQL jsem zadaval heslo pro root.
MySQL server normalně funguje.
Jen Logchceck mi prozradil že logrotate má problem s logováním viz. zpráva níže.

/etc/cron.daily/logrotate:
error: error running shared postrotate script for /var/log/mysql.log /var/log/mysql/mysql.log /var/log/mysql/mysql-slow.log
run-parts: /etc/cron.daily/logrotate exited with return code 1


zjistil jsem ze mi nejak chyí uživatel debian-sys-maint@localhost.
Tohoto uživatele jsem vytvořil ručně heslo jsem vytvoril dle zaznamu v /etc/mysql/debian.cnf. Vše se začalo chovat jak má, teda alespon na první pohled.
Přes Phpmyadmina jsem se stale pripojoval at jako uzivatel ci root bez problemů.
problem nastal ve chvili kdy jsem se rozhodl prihlasit se pres konzoli.


rsedlacek@sid:~$ sudo mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 54
Server version: 5.0.51a-24+lenny1-log (Debian)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> quit
Bye

rsedlacek@sid:~$ sudo mysqladmin status
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'

rsedlacek@sid:~$ sudo mysqlcheck -A
mysqlcheck: Got error: 1045: Access denied for user 'root'@'localhost' (using password: NO) when trying to connect
rsedlacek@sid:~$


abych se ujistil ze nejsem blbi ze heslo je vsude provedl jsem prikaz


mysql> SELECT `Host` , `User` , `Password` FROM `user` WHERE 1 LIMIT 0 , 30;
+-----------+------------------+-------------------------------------------+
| Host      | User             | Password                                  |
+-----------+------------------+-------------------------------------------+
| localhost | root             | *AE2FA288C1B1D6FAF157B92317F7F7370809EE18 |
| sid       | root             | *AE2FA288C1B1D6FAF157B92317F7F7370809EE18 |
| 127.0.0.1 | root             | *AE2FA288C1B1D6FAF157B92317F7F7370809EE18 |
| localhost | sid_access       | *51AE6A8A3FAA985ABF18D7CE3C1C74AD57C69696 |
| localhost | debian-sys-maint | *1966DBEA119E17C42E5E5235648FA0A3FFE20804 |
+-----------+------------------+-------------------------------------------+
5 rows in set (0.00 sec)


najde se tu někdo kdo mi poradí jak vlastně donutím aplikace, aby používali heslo. Pokud totiž heslo u uživatele root (3 řadky z predchozího výpisu) vymažu tak vše jede OK. Ale ja chci mít u user root heslo.

Předem děkuji všem za radu.

Při dotazování se povzneste nad pocit, že můžete působit dojmem nejhloupějšího člověka v místnosti.
Jack Welch

Jakub Lucký

Máte v té databázi něco důležitého? Zkusil bych si jí dumpnout a přeinstalovat, protože tohle vypadá na nějakou nedovychytanou instalaci/špatné konfigy...


apt-get purge mysql-server-5.0
rm -r /etc/mysql
rm -r /var/lib/mysql   #toto smaže veškeré databáze!!
apt-get update
apt-get clean # pro případ, že by byl balíček corrupted - asi je jen tak pro hodně velkou jistotu, tohle se dělat nemusí
apt-get install mysql-server-5.0
Developers, developers, developers, developers, developers!

radekzatec

Ahoj Jakube díky za radu.
:'(
I když jsem mysql přeinstaloval (a né zrovna bez problémů), tak výsledek je stejný.
Otázka z ní kdo, co, jakej konfigurák říka všem příkazům mysql (mysql, mysqlcheck, mysqldump, aj.), že mají používat heslo a nebo nemají. protože jak říkam beží mi PHPmyAdmin, PHPscripty jsou take v pohodě normalne s DB pracují. Ale v linuxu mi nejede příkazový řádek (nezkoušel jsem zalohování přes PHP).

Příkazový řádek funguje, jen když uživatel root nemá heslo ve chvíli kdy jej vytvořím tak příkazový řádek hlásí výše uvedenné chybové hlašení.

Předem děkuji za další rady.

Jinak při reinstalaci MySQL serveru 5.0 jsem postupoval takto.

sudo /etc/init.d/mysql stop

sudo aptitude purge mysql-server-5.0

sudo rm -r /etc/mysql

sudo rm -r /var/lib/mysql #nebylo ale třeba databaze byli smazany uz pri odinstalaci mysql

sudo aptitude clean

sudo aptitude update

sudo aptitude upgrade #kdyby náhodou nejaka aktualizace v systému

sudo aptitude install mysql-server-5.0



Instalaci jsem dle postupu delal nekolikrate.
Poprve nebylo mozne automaticky pri instalaci vytvorit slozku /etc/mysql/conf.d
kam patří old.password.cnftim cela instalace ztroskotala.
Ručně jsem udelal slozku a udelal reinstalaci tentokrate sem zkrachoval na vytvoření souboru /etc/mysql/my.cnf nevím proč ani jak je to možne při instalaci novehop serveru je vse OK ale pri reinstalaci po aptitude purge jsem se s tim setkal napriklad u NTP serveru a dokonce u FTP serveru.

Instalace se mi povedla na počtvrté a to rucnim vytvořením složky conf.d a souboru my.cnf.

nevite nekdo proc se tak deje.

jeste ma nekdo defaultni verzi my.cnf pro Verze MySQL: 5.0.51a-24+lenny1-log

dekuji MOC
Při dotazování se povzneste nad pocit, že můžete působit dojmem nejhloupějšího člověka v místnosti.
Jack Welch

Ahmul

Defaultní verzi konfiguráku byste měl najít v balíčku (podívat se do něj můžete přes mc;-)

mysqladmin můžete klidně spouštět s parametrem -p nebo používat configuarační soubor pomocí parametru --defaults-file= stejně jako při používání příkazu mysql.