当前位置: 首页 > article >正文

MySQL笔记-启动时log报错Table ‘mysql.user‘ doesn‘t exist

安装好mysql后,正常使用(使用的是rpm版安装的)

service mysqld start | stop | restart

不会出现这个问题。

我遇到的情况是在凝思操作系统上,已经存在了一个mysql。网上查找了一些资料,卸载,后可能卸载不干净,使用上面命令mysql启动不了。出现的报错和以前卸载前的东西有关。

因此采用了如下方式启动:

/usr/sbin/mysqld --defaults-file=/etc/my.cnf --user=root&

这里会出现Table 'mysql.user' doesn't exist报错,启动不了。

原因是没有进行初始化,可以理解成service mysql start这个命令里面的一小步。

/usr/sbin/mysqld --initialize --user=root --basedir=XXXX --datadir=XXXX

注意basedir和datadir,特别是这个datadir很关键,mysql.user就是在里面。

这个datadir的目录需要和 /etc/my.cnf里面的配置一致:

[mysqld]

#数据存储路径
# /usr/sbin/mysqld --initialize --user=root --basedir=XXXX --datadir=XXXX
# 设置datadir目录
datadir=/var/lib/mysql

然后停止mysql,注意这里一定要用service去操作

service mysqld stop

特别是有遗留mysql的系统。

随后在/etc/my.cnf中新增跳过密码:

[mysqld]
skip-grant-tables

再启动mysql

/usr/sbin/mysqld --defaults-file=/etc/my.cnf --user=root&

最后就能正常进入修改用户名密码了。

以后启动就用

/usr/sbin/mysqld --defaults-file=/etc/my.cnf --user=root&

停止:

service mysqld stop

补充mysql5.7中修改用户密码的命令:

alter user 'root'@'localhost' identified by '123';


http://www.kler.cn/a/419618.html

相关文章:

  • 计算机科学中的主要协议
  • 项目搭建+添加
  • 浏览器的数据六种存储方法比较 :LocalStorage vs. IndexedDB vs. Cookies vs. OPFS vs. WASM-SQLite
  • Uniapp自动调整元素高度
  • AD软件如何快速切换三维视图,由2D切换至3D,以及如何恢复
  • Vue.js 实现输入框清空功能的两种方式
  • camera驱动开发(初学)
  • 复杂网络之BA无标度网络
  • Unity-Particle System属性介绍(一)基本属性
  • Redis——主从复制原理
  • 2024年09月中国电子学会青少年软件编程(Python)等级考试试卷(六级)答案 + 解析
  • C# Winform WaitingForm等待窗体(CSFramework提供)
  • 移动式压力容器充装作业题库分享
  • 【NoSQL数据库】Hbase基本操作——数据库表的增删改查
  • AcWing 3683:长方形中的正方形 ← 复旦大学考研机试题
  • 【Vue3】App.vue
  • 基于SpringBoot的汽车销售网站
  • 从Prometheus更换为VictoriaMetrics
  • 深入探讨NIO
  • 架构的学习
  • Verilog的线与类型与实例化模块
  • 成都睿明智科技有限公司抖音电商服务的新引擎
  • ubuntu的用户使用
  • 十进制左移右移以及IO输出处理记录
  • 基于Java Springboot房屋出售租赁系统
  • torch_geometric使用手册-Creating Graph Datasets(专题四)