我试图移动MySQL表,所以他们在另一个文件夹,所以我搞砸了插件表或类似的东西,我结束了重新安装整个事情。
我做了sudo aptitude purge mysql-server
然后我删除了MySQL数据rm -rf /var/lib/mysql/mysql
,同时我从另外一个目录中删除了我试图移动表的数据。
重新安装后,我认为我将能够使用mysql -u root
login,但它表示用户是错误的。 我试着用旧的密码和相同的东西。 然后我search了一个重置root密码的方法。
所以我做了mysqld_safe --skip-grant-tables
然后我loginmysql -u root
成功,然后我尝试UPDATE user SET Password=PASSWORD('new-password') where User='root';
没有运气, 0 rows affected
。 然后,我做了SELECT * FROM User
,我得到的只是debian-sys-maint
,没有其他的,没有根或任何其他用户。
任何一点帮助将不胜感激= /
只需创build你需要的用户。 默认情况下可能没有root@localhost
。
你总是可以通过mysql --defaults-file=/etc/mysql/debian.cnf
连接mysql --defaults-file=/etc/mysql/debian.cnf
创build新的root用户: GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'YOUR NEW PASSWORD' WITH GRANT OPTION
由于只删除了/ var / lib / mysql / mysql,因为数据目录(/ var / lib / mysql)仍然存在,所以重新安装不会创build默认的dbs。 重命名数据目录并再次尝试重新安装。 使用root帐户设置后,您可以从备份中恢复数据库。
– $