腾讯云centos mysql8.0+node部署踩坑

前端之家收集整理的这篇文章主要介绍了腾讯云centos mysql8.0+node部署踩坑前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

安装

按照菜鸟教程安装
http://www.runoob.com/MysqL/MysqL-install.html

问题1:Systemctl start MysqLd 后提示Job for MysqLd.service Failed See “systemctl status MysqLd.service”

这里显示错误提示并不是真正的错误所在,需要检查/var/log/MysqLd.log
查看日志后我遇到的是

The innodb_sy stem data file 'ibdata1' must be writable;

也就是权限问题,进入到

/var/lib/MysqL

使用chomd 777 filename修改权限

之后再次启动仍然错误,再次检查log文件发现有新的文件权限问题,于是我把MysqL下的所有文件权限设置了777  chomd -r 777 MysqL 问题解决

问题2: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)grep 'temporary password' /var/log/MysqLd.log

grep 'temporary password' /var/log/MysqLd.log

查找第一次MysqL启动时为root临时密码

    MysqL -u root -p 

即可登录

问题3:忘记密码

vim /etc/my.cnf

在[MysqLd]后面添加一行 skip-grant-tables 保存退出
即可直接进入MysqL 按照官方文档操作

https://dev.MysqL.com/doc/refman/8.0/en/resetting-permissions.html

修改成功后记得删除skip-grant-tables;

问题4:MysqL链接node提示 Error: connect ECONNREFUSED,还提示release()错误,因为根本没连上不需要释放

出现这个问题也就是连接出了问题,这时候要去检查下端口配置等是否匹配
MysqL> show global variables like 'port';
查看发现端口是0而不是默认的3306..

修改端口,编辑/etc/my.cnf文件 [MysqLd]后面加一行

   port=3306

保存退出
重启MysqLd服务,

  systemctl status MysqLd找到对应pid  
kill pid 
  systemctl start MysqLd

然后进入MysqL 重置下密码(否则node中权限报错)

   alter user '用户名'@localhost IDENTIFIED WITH MysqL_native_password by '你的密码';

再次启动node服务器

问题5:安装过高node版本会导致各种奇怪的问题

使用n lts 安装稳定版本

猜你在找的CentOS相关文章