阿里云mysql无故挂掉,mysql配置系统变量,Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2),

在毕设后,一段时间没有用的阿里云中的mysql。毕设项目无法连接。

 

试图登录,出现Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)。

再出现Access denied for user ‘root‘@‘localhost‘ (using password: NO),重置密码后。

在跳过密码登录后,发现user表中user字段直接没有了root用户。

再到全部弄完。发现那个毕设用的库被黑客给删完了。留下了一个README

 

 

我寻思我也没有比特币啊,有了我也不知道怎么发啊,哈哈。

而且就一个毕设的库而已,我电脑里还有备份呢。

这是对于我遇到这次问题的记录,大多解决方案来自百度。我是做了一些搬运,赋值到和这个博客上,可能有些复制的和说的可能不对啊。我的建议是,可以点击我每一章的下面的参考链接,去看看原博客。虽然里面可能有些比如操作指令不一样的地方。但是问题不大。

那么接下里就来说一下,上面的问题如何解决

一.给msql设置系统变量

1.首先我以前么有给mysql设置过系统变量。这次也记录一下设置系统变量吧,方便在任何文件夹都可以登录mysql,而不用去特定文件夹下。

1、找到mysql的安装了路径

whereis mysql


2、确定安装路径在/usr/local/mysql/bin/mysql 下后,创建一个软连接

ln -s  /usr/local/mysql/bin/mysql  /usr/bin

3、再次验证

mysql -V

参考链接为 参考链接

二.在尝试登录是遇到Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

总的来说我也不是很懂。也不知道为什么我没有那个socket文件了,而在tmp在我也根本没有这个文件

解决问题的关键在于改一个配置文件

修改/etc/my.cnf 配置文件

如果没有那就创建一个

我在原本有的基础上就添加了一点。比如上面的client部分。和下面mysql,和mysqld下面的sockt

这样就没有再报这个错了。

找了很多参考,最好的参考链接是参考链接

 注意里面的的对于系统的操作命令可能不太一样。我说一下我的:service mysql-service stop

这是停止,启动就是start,重启就是restart;

三.Access denied for user ‘root‘@‘localhost‘ (using password: NO),和重新添加root

再然后就是另一个问题了,Access denied for user ‘root‘@‘localhost‘ (using password: NO)。说人话,就是我密码不对。但事实上我从来没有更改过我的密码。这应该和后面的user表没有root有关系。

步骤大体为,利用配置文件绕过登录进入mysql,然后更改密码。再把配合文件还原。然后利用密码登录。

配置文件还是刚才的my.cnf,在mysqld下加一个

skip-grant-tables

保存。重启mysql

直接输入mysql就可以进入mysql了

然后

use mysql

先  

 flush privileges;

然后 

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '我的密码';

注意root@%,有的人可能是

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '我的密码';

可以自己查一下user表

select user,host from user;

这是在root还存在的情况下。如果查完没有root。那么就需要插入那一行数据了

那自然是要通过命令去创建root用户了

insert into user(User,authentication_string,ssl_cipher,x509_issuer,x509_subject) values('root','','','','');


添加权限

update user set Host='%',select_priv='y', insert_priv='y',update_priv='y',Alter_priv='y',delete_priv='y',create_priv='y',drop_priv='y',reload_priv='y',shutdown_priv='y',Process_priv='y',file_priv='y',grant_priv='y',References_priv='y',index_priv='y',create_user_priv='y',show_db_priv='y',super_priv='y',create_tmp_table_priv='y',Lock_tables_priv='y',execute_priv='y',repl_slave_priv='y',repl_client_priv='y',create_view_priv='y',show_view_priv='y',create_routine_priv='y',alter_routine_priv='y',create_user_priv='y' where user='root';commit;



在进行查看user表数据,可以看到root用户被创建和添加权限。

都弄完之后就可以,去把my.cnf中的添加的语句删掉了。然后再重启mysql就好了。

参考链接参考链接

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值