禁用或限制远程访问。若允许远程访问,需要确保特定主机才拥有访问权。
对用户进行合理授权,应用程序中最好不要直接使用root用户。
限制打开网络socket,此时仍可以建立与Mysql服务器的本地连接。
[mysqld]
skip-networking
强迫Mysql仅监听本机。
[mysqld]
bind-address=127.0.0.1
更改root用户的登录名称和密码。
移除测试数据库和匿名账户及废弃的账户。
禁用LOCAL INFILE。
[mysqld]
set-variable=local-infile=0
删除历史命令记录。
cat /dev/null >~/.bash_history
cat /dev/null >~/.mysql_history
及时安装Mysql安全补丁。
使用chroot限制Mysql运行环境。
自动定期备份数据库。
解决方法一:一些库可以保留30天的备份。主库的Binlog保留时间为7天,可以从库备份拿出来恢复,然后通过主库的Binlog通过时间段来筛选出时间段所有更改的一些数据。或者通过其他方法慢慢将这部分数据找出来。一定得先找备份及时间点在备份的从库上检查备份,通过确定时间点可以查看备份文件进行恢复。
具体恢复 *** 作:
1.从备份机拷贝备份
2.恢复测试机解压
3.恢复测试机导入
4.将主库的Binlog拷贝到恢复测试机
5.使用MySQLBinlog 生成SQL脚本
6.Binlog生成的SQL脚本导入
7.导入完成后检查数据正确性
解决方法二:
联系专业的资料恢复公司进行恢复。在数据局遭到攻击在没有备份或者无法恢复的情况下,由于资料恢复的复杂性专业性,如果擅自 *** 作可能会使得数据库遭受无法恢复的灾难。这时候为了避免出现更大的损失,我们应该停止 *** 作,以免造成数据的二次破坏。这时候应该第一时间联系专业的资料恢复公司进行处理。
很容易认为这儿是一个错误,其实可以直接忽略,重新输入密码[root@localhost ~]# passwd
更改用户 root 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]#
方案二:对密码规则进行设置
这一部分参考"Linux中国"的文章:如何设置 Linux 系统的密码策略
在基于 DEB 的系统中设置密码长度
默认情况下,所有的 Linux *** 作系统要求用户密码长度最少 6 个字符。我强烈建议不要低于这个限制。并且不要使用你的真实名称、父母、配偶、孩子的名字,或者你的生日作为密码。即便是一个黑客新手,也可以很快地破解这类密码。一个好的密码必须是至少 6 个字符,并且包含数字、大写字母和特殊符号。
通常地,在基于 DEB 的 *** 作系统中,密码和身份认证相关的配置文件被存储在 /etc/pam.d/ 目录中。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)