Ik heb onlangs een backup van mysql teruggezet en daarbij ook de mysq.user tabel overschreven. Dit heeft tot gevolg gehad dat ik er nu niet meer in kan als root en feitelijk niets meer met mysql kan doen.
Tot overmaat van ramp zit ik ook nog eens met een e-smith distributie waarbij alles dusdanig anders werkt dat ik er met de search hier en de documentatie niet uit kom.
Op mysql.com stellen ze voor om dit te doen:
kill `cat /var/run/mysqld/mysql.pid`
Maar toen bleek mysqld_safe niet te bestaan en schoot ik dus niets mee op.
Ik kan overigens niet eens mysqld vinden. Als ik een tab geef na mysql beweert ie alleen de volgende commando's te kennen:
maar daar schiet ik verder ook weinig mee op, omdat ie blijft zeuren dat root@localhost geen rechten heeft.
Hoe kan ik dit het beste oplossen?
(btw, mijn kennis van linux is beperkt, dat (en een HD van maar 2gieg) is ook de reden dat ik e-smith draai. Neemt weinig ruimte in en is makkelijk te begrijpen qua installatie)
Tot overmaat van ramp zit ik ook nog eens met een e-smith distributie waarbij alles dusdanig anders werkt dat ik er met de search hier en de documentatie niet uit kom.
Op mysql.com stellen ze voor om dit te doen:
Ten eerste komt dat hele bestand hostname.pid al niet voor op m'n harde. Kan alleen een file mysql.pid vinden. Ik heb dit geprobeerd:# You must log onto your system as either the Unix root user or the same user as mysqld server.
# You must first locate the `.pid' which contains the server's process ID. The exact location and name of this file depends on your distribution, hostname, and configuration. Common locations are: `/var/lib/mysql/', `/var/run/mysqld/' and `/usr/local/mysql/data/'. Generally the base filename is either `mysqld' or your system's hostname. Now you can take down the MySQL server by sending a normal kill (not kill -9) to the mysqld process:
shell> kill `cat /mysql-data-directory/hostname.pid`
# Restart the MySQL server with the special --skip-grant-tables option:
shell> mysqld_safe --skip-grant-tables &
# Set a new password for the root@localhost MySQL user:
shell> mysqladmin -u root flush-privileges password "newpwd"
Replace ``newpwd'' with the actual root password that you want to use.
# You should now be able to connect using the new password.
kill `cat /var/run/mysqld/mysql.pid`
Maar toen bleek mysqld_safe niet te bestaan en schoot ik dus niets mee op.
Ik kan overigens niet eens mysqld vinden. Als ik een tab geef na mysql beweert ie alleen de volgende commando's te kennen:
Text output:
1
2
3
4
5
6
7
8
9
10
| mysql mysqlbinlog mysql_config mysqlbug mysql_convert_table_format mysqlcheck mysql_find_rows mysqld_multi mysql_fix_privilege_tables mysqldump mysql_install_db mysqldumpslow mysql_setpermission mysqlhotcopy mysql_zap mysqlimport mysqlaccess mysqlshow mysqladmin mysqltest |
maar daar schiet ik verder ook weinig mee op, omdat ie blijft zeuren dat root@localhost geen rechten heeft.
Hoe kan ik dit het beste oplossen?
(btw, mijn kennis van linux is beperkt, dat (en een HD van maar 2gieg) is ook de reden dat ik e-smith draai. Neemt weinig ruimte in en is makkelijk te begrijpen qua installatie)