linux—从mariadb迁移到MySQL5.7会导致密码重置和列计数问题

xggvc2p6  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(289)

我们从我的fedora机器上卸载了mariadb并安装了MySQL5.7CommunityServer,安装后一切正常,但我们在不知不觉中运行了mysql\u升级--force-uuser-p。
现在我不能用我的数据库做任何事情。请帮助,下面是一些错误出现。
mysql>使用mysql;错误1820(hy000):在执行此语句之前,必须使用alter user语句重置密码。
mysql>set password=password('root');错误1805(hy000):mysql.user的列计数错误。预计45岁,发现46岁。表可能已损坏
mysql>alter user'root'@'localhost'由'secret'标识;错误1805(hy000):mysql.user的列计数错误。预计45岁,发现46岁。表可能已损坏

t9aqgxwy

t9aqgxwy1#

我也遇到了同样的问题。
我就是这样解决的。

service mysql stop
    mysqld --skip-grant-tables &
    mysql
    # Delete the extra column
    ALTER TABLE mysql.user DROP COLUMN is_role;
    # Update your password
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_password';
    flush privileges;
    quit

现在,您可以运行命令 mysql_upgrade -uroot -p 升级数据库。
完成这些操作后,重新启动mysql服务器进程,使其回到正常模式。
问题解决了。

相关问题