Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
1.mysql 无法连接mysql服务器通过这个sock,解决办法,将这个文件的权限置成777
密码错误:可以使用
mysql -u root --skip-password 跳过密码
或者在/etc/mysql/mysql.conf.d/mysqld.cnf 或者/etc/my.cnf 的mysqld 下加上 skip-grant-tables
然后需要先选择数据库 所以先use mysql; 进入到mysql数据库
先看一下mysql表里的信息 会非常清楚。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
update user set authentication_string=password('新密码') where user='root'; 这里的错误是因为password这个字段根本就是多余的 很多帖子瞎复制
这样会遇到下面的问题 密码无效。
猜测可能的原因是直接修改了密码 让普通用户登录也可以看到密码 不安全。所以正确的方式应该是
1) use mysql; 2) update user set authentication_string='' where user='root';// 如果这个字段有值,先置为空,之前的版本密码字段是password 3) flush privileges;// 刷新权限表 4) 执行select user,host from user;// 查看用户及host,方便后续修改 5) ALTER user 'root'@'localhost' IDENTIFIED BY '密码';// 修改root 密码
6) exit;//退出mysql
这种方式改下来的密码如下图
终于解决了完结撒花。