» »

problem pri sprembi root gesla v MySQL v Ubuntu

problem pri sprembi root gesla v MySQL v Ubuntu

killa bee ::

Želim spremeniti root geslo v MySQL-u, ker sem ga pozabil.
Sledil sem tem navodilom.
link

Ta ukaz iz navodil mi uspšno izvede
sudo /etc/init.d/mysql stop

Tudi tega:
sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking &

Pri tem ukazu pa dobim sledeči error:
mysql -u root

Error:
mysql -u root
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
[1]+  Exit 1                  sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking


Kako naj spremenim geslo?

OrkAA ::

Problem je, da ti mysql umre preden se sploh uspes skonektat nanj. Probaj ga pognat v locenem tabu, brez da ga posljes v background (&).

Torej samo: sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking

Zna bit, da bo umrl in povedal kaj tocno ga muci.

killa bee ::

Problem je, da ti mysql umre preden se sploh uspes skonektat nanj. Probaj ga pognat v locenem tabu, brez da ga posljes v background (&).

še vedno dobim isti error

OrkAA ::

Preberi se enkrat kar sem napisal.

Ne zanima te error, ki ga sproducira "mysql -u root".

Zanima te zakaj se mysql ugasne, ko ga pozenes z "sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking"

killa bee ::

sem ga pognal v ločenem tabu in brez '&' in ne dobim nobenega errorja.
Če poženem htop ne vidim nobenega mysql* procesa.

Zgodovina sprememb…

OrkAA ::

Daj vrzi output na pastebin, da vidim, ce res ni errorja.

killa bee ::

ne vem kaj je ta pastebin ampak tu je printscreen
https://postimg.org/image/8ritjrzqh/

http://pastebin.com/raw/zh3CafAv

Zgodovina sprememb…

OrkAA ::

Aha, umre ti brez da bi sploh dalo kakrsenkoli output.

Za zacetek poskusaj dodat "-v" flag, ce bo to kaj pomagalo, sicer pa glej v /var/log/syslog, ker mogoce pise tja.

To lahko storis z "tail -f /var/log/syslog". Obstaja pa tudi moznost, da pise v enega izmed mysql logov, ki se tudi nahajajo nekje v /var/log.

M & M ::

Poskusi k mysqld dodati še to:
--socket=/var/run/mysqld/mysqld.sock
, ostalo naredi kot si že poskušal ...

S tem serverju poveš kje naj posluša. Na to vtičnico se potem povezuješ s klientom ...

killa bee ::

seba@seba-H81-D3:~$ sudo /etc/init.d/mysql stop
[ ok ] Stopping mysql (via systemctl): mysql.service.
seba@seba-H81-D3:~$ sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking --socket=/var/run/mysqld/mysqld.sock
seba@seba-H81-D3:~$ mysql -u root
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)


Service ne deluje, ga ni videt v htop-u

Zgodovina sprememb…

M & M ::

Kaj pa pravi error log?
tail /var/log/mysql/error.log

killa bee ::

tail /var/log/mysql/error.log
2016-11-04T19:01:34.993987Z 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
2016-11-04T19:01:34.993996Z 0 [Note] Shutting down plugin 'CSV'
2016-11-04T19:01:34.994005Z 0 [Note] Shutting down plugin 'MyISAM'
2016-11-04T19:01:34.994014Z 0 [Note] Shutting down plugin 'MEMORY'
2016-11-04T19:01:34.994016Z 0 [Note] Shutting down plugin 'MRG_MYISAM'
2016-11-04T19:01:34.994018Z 0 [Note] Shutting down plugin 'sha256_password'
2016-11-04T19:01:34.994020Z 0 [Note] Shutting down plugin 'mysql_native_password'
2016-11-04T19:01:34.994110Z 0 [Note] Shutting down plugin 'binlog'
2016-11-04T19:01:34.994252Z 0 [Note] /usr/sbin/mysqld: Shutdown complete

M & M ::

Hmm .. nič uporabnega :8)

Tu imaš opisano še eno malo drugačno metodo (pod B.5.3.2.2 Resetting the Root Password: Unix and Unix-Like Systems) ...

jype ::

V tvojem primeru boš lažje rešil, če v /etc/mysql/my.cnf pod [mysqld] dodaš

skip-networking = 1
skip-grant-tables = 1

in restartaš mysql z

service mysql restart

Ko zamenjaš root geslo ne pozabit vreči teh reči ven iz my.cnf in restartat še enkrat.

Zgodovina sprememb…

  • spremenilo: jype ()

killa bee ::

Sem se lotil predlagane metode ampak nenajdem .pid file-a.

It dokumentacije:

Stop the MySQL server if it is running. Locate the .pid file that contains the server's process ID. The exact location and name of this file depend on your distribution, host name, and configuration. Common locations are /var/lib/mysql/, /var/run/mysqld/, and /usr/local/mysql/data/. Generally, the file name has an extension of .pid and begins with either mysqld or your system's host name.


Sem pogledal vse 3 lokacije vendar ga ni v nobeni mapi omenjeni??

Zgodovina sprememb…

jype ::

Ne rabis pid filea, ce naredis tako kot sem ti jaz napisal.

killa bee ::

kako nej ustavim service če nimam .pid file-a?

oz. kako nej vem če je že ustavljen?

Zgodovina sprememb…

M & M ::

ps -aux | grep mysqld


Če to izpiše še kaj drugega razen samega sebe (grep), potem mysql server še teče. PID je številka v drugem stolpcu. Namesto ukaza iz dokumentacije lahko potem uporabiš

kill 1234


(zamenjaš 1234 s pravim PID).

killa bee ::

seba@seba-H81-D3:~$ sudo kill 11273
seba@seba-H81-D3:~$ mysqld_safe --init-file=/home/seba/mysql-init
/usr/bin/mysqld_safe: 548: /usr/bin/mysqld_safe: cannot create /var/lib/mysql/mysqld_safe.pid: Permission denied
awk: close failed on file /dev/stdout (Broken pipe)
2016-11-04T20:48:38.263752Z mysqld_safe Logging to syslog.
2016-11-04T20:48:38.265684Z mysqld_safe Logging to '/var/log/mysql/error.log'.
mkdir: cannot create directory ‘/var/run/mysqld’: Permission denied
chown: cannot access '/var/run/mysqld': No such file or directory
chmod: cannot access '/var/run/mysqld': No such file or directory
2016-11-04T20:48:38.278275Z mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
/usr/bin/mysqld_safe: 137: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Permission denied
/usr/bin/mysqld_safe: 1: eval: cannot create /var/log/mysql/error.log: Permission denied
2016-11-04T20:48:38.282365Z mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
/usr/bin/mysqld_safe: 137: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Permission denied
rm: cannot remove '/var/lib/mysql/mysqld_safe.pid': Permission denied

Zgodovina sprememb…

killa bee ::

Znotraj file-a
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');

killa bee ::

če poženem s sudo dobim pa naslednje:
seba@seba-H81-D3:~$ sudo mysqld_safe --init-file=/home/seba/mysql-init
2016-11-04T21:32:55.563890Z mysqld_safe Logging to syslog.
2016-11-04T21:32:55.566176Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2016-11-04T21:32:55.582220Z mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
2016-11-04T21:32:57.979161Z mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
seba@seba-H81-D3:~$ 


v htop vidim da se je mysql pognal vendar tudi ugasne tako da nima smisla pisat:
mysql -u root -p


Mogoče bi bilo pametno da bi zbrisal program in ga ponovno naložil?

killa bee ::

Uninstall-al sem MySQL kompletno ter ga ponovno inštaliral s pomočjo naslednjih ukazov:
sudo apt-get update
sudo apt-get install mysql-server

Sedaj nimam nastavljenega root gesla.
Kako prvič nastavim root geslo?

Probal sem na ta način vendar dobil napako. Kako bi to rešil?
mysqladmin -u root password "seba";
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'

Zgodovina sprememb…

killa bee ::

Sem pogruntal v čem je bil problem, če bo kdo rabil:

1 Potrebno je imeti inštaliran MySQL Server + Client
2 Treba je bilo ustaviti service z:
sudo /etc/init.d/mysql stop

3 Pognati
mysqld_safe --skip-grant-tables &

4 Odpreti novo terminal okno in vanj vpisati:
mysql -u root

Sedaj bi moral biti v programu.
5 Zatem
mysql>use mysql;

6 in potem
update user set authentication_string=password('1111') where user='root';

Namest 1111 uporabi svoje novo geslo.
7 exit all windows

Zgodovina sprememb…

  • spremenilo: killa bee ()

killa bee ::

3
sudo mysqld_safe --skip-grant-tables &


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Apache in Node.JS

Oddelek: Izdelava spletišč
91955 (1641) dunda
»

MySQL pomoc

Oddelek: Izdelava spletišč
171839 (1095) slosi
»

MySQL problem

Oddelek: Omrežja in internet
51399 (1346) trnvpeti
»

MySQL in czs

Oddelek: Izdelava spletišč
423600 (2690) krho
»

Mysql problem z zagonom

Oddelek: Izdelava spletišč
161188 (1050) Gandalfar

Več podobnih tem