很久没手工装过MySQL了,诸如AppNode这样的服务器面板很好的帮助开发人员屏蔽了琐碎的底层环境配置问题。不过AppNode支持的系统版本都很老了,其他面板又用不惯,于是打算手工安装一次环境尝鲜下新版本。

不夸张的说,我为了装一个MySQL昨天晚上从12点折腾到凌晨3点,今天早上11点起来又折腾到13点……于是今天打算把遇到的坑总结一下,免得后人再踩进来。

文章目录

坑一

Ubuntu 20.04下安装mysql-server的过程中是不会要求输入root密码的,root密码被设置成了什么至今我也没弄明白。

看到网上教程以及官方文档都说安装过程中会生成一个默认密码,并被保存在错误日志里,然而我仔细翻过,发现并没有。

于是乎打算强制修改root密码,由此引出了坑二……

正确的查看管理密码的方式是:

sudo cat /etc/mysql/debian.cnf

上述文件的内容是:

可以看到user字段就是管理员用户名,password当然就是默认密码了。这个debian-sys-maint账号是Debian系Linux下MySQL的默认管理账号。

直接使用这个账号登录MySQL就可以愉快的玩耍了,如果你和我一样不幸的按照网上的坑比文章强制重设了root密码,请看“坑二”。

坑二

当时为了重置root密码,在网上搜了很多文章,大部分都是教要在/etc/mysql/my.cnf中添加skip-grant-tables;选项来跳过密码登录。

如果你这么做了,恭喜你,你完蛋了。

根据一篇台湾同胞写的文章来看,这个选项会修改mysql的用户表,造成不可预知的问题。

其具体表现的症状就是你在修改完root密码并登陆后,执行show databases;命令会弹出如下报错:

ERROR 1449 (HY000): The user specified as a definer ('mysql.infoschema'@'localhost') does not exist

这个报错着实让我头疼了一阵,谷歌搜、百度搜、官网搜,得出的结论无非就是执行mysql_upgrade -u root -p命令,尝试升级/var/lib/mysql下的数据库文件。

可是,这个命令在MySQL 8.0.16中已经被废弃了……执行后会出现如下提示:

Enter password:

The mysql_upgrade client is now deprecated. The actions executed by the upgrade client are now done by the server.

To upgrade, please start the new MySQL binary with the older data directory. Repairing user tables is done automatically. Restart is not required after upgrade.

The upgrade process automatically starts on running a new MySQL binary with an older data directory. To avoid accidental upgrades, please use the --upgrade=NONE option with the MySQL binary. The option --upgrade=FORCE is also provided to run the server upgrade sequence on demand.

It may be possible that the server upgrade fails due to a number of reasons. In that case, the upgrade sequence will run again during the next MySQL server start. If the server upgrade fails repeatedly, the server can be started with the --upgrade=MINIMAL option to start the server without executing the upgrade sequence, thus allowing users to manually rectify the problem.

当然,更可笑的是,我压根没执行过数据库服务器的升级,为何要去升级数据库文件……

要解决这个问题,就得把整个MySQL完全卸载,并删除/var/lib/mysql目录,重新安装后再通过“坑一“中介绍的方式来查看管理员账号。

如果你必须要用root用户,可以使用这个命令重置其密码:sudo mysql_secure_installation

ubuntu20.04安装mysql_Ubuntu 20.04安装MySQL 8.0.20记相关推荐

  1. ubuntu18.4中查看mysql_Ubuntu18.0.4下mysql 8.0.20 安装配置方法图文教程

    mysql 8.0.20 安装配置方法图文教程整理下,供大家参考. 一.准备工作 1.检查是否已经安装mysql 当前计算机没有安装mysql. 2.下载MySQL8.0. 根据MySQL安装指南,发 ...

  2. win10配置mysql8.0_Win10下mysql 8.0.20 安装配置方法图文教程

    Win10系统下MySQL 8.0.20安装和配置超详细教程 MySQL下载 MySQL直接去官网下载就行,选择community版本(免费)下载,链接. 在select operating syst ...

  3. 安装数据库MySQL 8.0.20.0 详细过程 小白安装

    安装数据库MySQL 8.0.20.0 详细过程 小白安装 耐心等待 复制完回到这里来 我们输入 net start 我们输入 net start 当然 我们也可以关闭数据库 命令如下 net sto ...

  4. centos php7.0 mysql_CentOS 7.3 下 安装LNMP(Nginx1.10+MySQL5.7+PHP7.0.20)

    前言:最近总是要安装服务器环境,记录这次CentOS 7.3下安装LNMP(Nginx1.10+MySQL5.7+PHP7.0.20)环境的过程,以备日后使用. 一.准备工作 1. 更新源 # yum ...

  5. mysql 8.0.20修改不区分大小写

    mysql 8.0.20修改不区分大小写 针对linux 已完成安装的mysql 打开mysql配置文件 vim /etc/my.cnf 在尾部追加一行 lower_case_table_names= ...

  6. ubuntu 16.04安装mysql_Ubuntu 16.04 安装mysql 5.7.16

    遇到问题(一般都会自己换 源,,保证自己的是正确,不然好多装不上) mysql 5.7开启远程 一个朋友在使用ubuntu-server 16.04安装mysql,设置远程访问的时候出现了问题,请我帮 ...

  7. 1、MySQL 8.0.20最新版本在Linux上安装

    文章目录 1.下载安装包 2.解压安装 3.拷贝到 /usr/local并重命名为mysql 4.删除/opt目录下解压的文件(也可以保留)只留下安装包 5.创建mysql用户组和用户并修改权限 6. ...

  8. MySQL 8.0.20 Window10免安装版配置及Navicat管理

    1.MySQL8.0.20下载及解压 下载链接https://dev.mysql.com/downloads/mysql/ 2.新建配置文件my.ini放在D:\mysql-8.0.20-winx64 ...

  9. ubuntu 12.04 php mysql_Ubuntu 12.04下LAMP安装配置

    我是一个Linux新手,想要安装一台Ubuntu 12.04版的Linux服务器,用这台服务器上的LAMP套件来运行我自己的个人网站.LAMP套件就是"Linux+Apache+MySQL+ ...

最新文章

  1. 系统学习NLP(三)--NLP入门综述
  2. XML 文档(0, 0)中有错误。缺少根元素。
  3. 2012 r2 万能网卡驱动_老旧台式机也可升级WiFi6和蓝牙5.1,仅安装百元网卡即可...
  4. html鼠标滚动效果代码,JS+CSS实现大气清新的滑动菜单效果代码
  5. 让height: 100%生效
  6. java metric_java版的Metric工具介绍
  7. 放苹果(信息学奥赛一本通-T1192)
  8. 【产品体验】echo回声
  9. html显示数据库的数据类型,将HTML插入mysql数据库,显示E类型
  10. aix系统怎么开启ftp服务器,liunx和aix 系统开启ftp服务
  11. 计算机网络工程师模拟题库,计算机网络工程师模拟题56.doc
  12. 【Web:Bootstrap框架】简单实现理解
  13. c++ 两个栈实现一个队列
  14. 驭电之道-用示波器测量二极管伏安特性曲线 模电实验 示波器 波形
  15. 浅谈大数据专业的就业前景
  16. 计算机凭据分配在哪里,电脑策略没有凭据分配怎么办
  17. 抗混叠滤波matlab实现,关于设计抗混叠滤波器容易忽视的三条建议
  18. 视频怎样转换html代码,超简单的视频格式转换方法,你会吗?
  19. BSN与CITA技术适配过程揭秘
  20. KingBaseES 报错Connection to X.X.X.X:54321 refused.Check that the hostname and port are correct and ..

热门文章

  1. 腾讯宣布捐赠1亿元驰援河南;苹果回应iPhone 安全隐患;贝索斯完成10分钟太空之旅|极客头条...
  2. 开挂程序员 Pat Gelsinger 如何重整英特尔?
  3. ​Azure 助力下,C9 电竞战队所向披靡!​
  4. 百度CTO王海峰:百度翻译每日翻译量已达到千亿字符
  5. 中国首个开源基金会来了
  6. 真的,没人能逃开“真香定律”
  7. 微信停止服务印度用户;阿里回应“马云遭印度法院传唤”;fastjson 1.2.73 发布 | 极客头条...
  8. 程序员之痛:六次创业五回失败了
  9. 9 个小技巧让你的 if else 看起来更优雅!
  10. 罗永浩出任“鲨纹科技”首席忽悠官;华为生产不含美国芯片的手机;PyCharm 2019.3 发布 | 极客头条...