mysql的数据库没了,同时出现一个WARNING表。To recover your lost Database and avoid leaking it: Send us 0.06 Bitcoin

mysql的数据库没了,同时出现一个WARNING表。
mysql的数据库没了,同时出现一个WARNING表。To recover your lost Database and avoid leaking it: Send us 0.06 Bitcoin_第1张图片

将内容复制下来,翻译就很明了了…
mysql的数据库没了,同时出现一个WARNING表。To recover your lost Database and avoid leaking it: Send us 0.06 Bitcoin_第2张图片
在第一次弄这种时。可能很多人都不了解。我也是踩了一个坑。在对这个数据库的用户设置时。首先是你的设置用户名密码包括端口都是默认,还有就是权限问题。我们在刚使用时,没这个观念,也图方便。就使用的默认的用户名和端口,甚至密码都很简单。就很容易被暴力破解了。

这种黑了库然后勒索的事情也不少见…
数据这东西由于我只是个小项目的开发中,并没有什么数据。所以还好。但是感觉到了不安全。那么该怎么防范呢?

1.修改访问权限

1.首先登录putty后。进入数据库

$ mysql -u root -p

2.输入密码,进入数据库后。输入进入mysql这个特殊的数据库。

$ use mysql

3.我们进入mysql这个数据库,里面有个特殊的表叫user。我们可以看看里面的用户。

select user,host from user;

显示出来的表,如果看到你的user下你的默认用户root,看到他的host是%的话。那这就是一个问题所在。
host代表允许访问的主机地址,而%为全部允许。

4.我们将它修改。而除了这个之外的用户,其实都可以删除掉。

update user set host='localhost' where user = 'root';
delete from user where user != 'root';

5.除了这个表,我们还需要去db表进行删除

delete from db where user != 'root';

6.然后刷新缓存,让配置生效

flush privileges;

密码账号已经泄露了。记得修改密码。推荐数字英文字符等结合。我为了安全,将默认用户名也修改了。当然,修改了以上后。


还有个问题。我的网站,在修改后访问不了数据库。因为上面改成了只有localhost可以访问了。也就是你的服务器上的虚拟主机可以访问。

所以我添加了一个新的用户,不过权限有限,只给了操作的项目的数据库的权限。而没给mysql数据库的权限。这个用户的host给了网站ip。然后网站就可以正常访问了。

另外,自己电脑的navicat也连不上。报错
1130 Host ‘xxxx.xx.xx.xx’ is not allowed to connect Mysql server.
因为此时你访问的不是本地的数据库,而是服务器上的。上面设置的localhost主机访问权限也是服务器的而不再是我们自己的电脑。我们的电脑算是外网的ip去访问云数据库。
所以加了第三个用户,将host给了本机ip。也就是上面报错的ip。

经过以上修改。
原最高权限的root被我设置成只有host为localhost允许访问。这样云服务器就可以访问到数据库了。我们就可以在putty上进行一些修改。
而第二个用户的host设置成了网站的ip,所以网站可以访问我们的数据库。
第三个就是我自己的电脑了。

2.修改端口号

1.同样在putty上先登录数据库

$ mysql -u root -p

2.我们可以查看下当前的端口号。默认3306

show global variables like 'port';

3.修改端口号

vi /etc/my.cnf

按i进入编辑模式。找到port=3306修改。
编辑完按esc进入命令模式 ,然后输入 :wq退出。

4.然后重启数据库

service mysql restart

5.我们可以再看看端口

show global variables like 'port';

然后可以看到修改成功。

另外,修改端口后,在网站的数据库连接的配置文件也要修改。

最后感谢给了我帮助。也给同样中招的朋友们一个办法。
https://blog.csdn.net/qq_42584411/article/details/90548619
https://blog.csdn.net/guoqiaosen/article/details/84918088

你可能感兴趣的:(mysql)