服务器数据库被恶意删除 还勒索比特币 数据库安全该怎么搞

服务器 0

Create_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Drop_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Reload_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Shutdown_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Process_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

File_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Grant_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

References_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Index_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Alter_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Show_db_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Super_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Create_tmp_table_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Lock_tables_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Execute_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Repl_slave_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Repl_client_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Create_view_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Show_view_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Create_routine_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Alter_routine_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Create_user_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Event_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Trigger_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

Create_tablespace_priv enum(‘N’,‘Y’) CHARACTER SET utf8 NOT NULL DEFAULT ‘N’,

ssl_type enum(‘’,‘ANY’,‘X509’,‘SPECIFIED’) CHARACTER SET utf8 NOT NULL DEFAULT ‘’,

ssl_cipher blob NOT NULL,

x509_issuer blob NOT NULL,

x509_subject blob NOT NULL,

max_questions int(11) unsigned NOT NULL DEFAULT ‘0’,

max_updates int(11) unsigned NOT NULL DEFAULT ‘0’,

max_connections int(11) unsigned NOT NULL DEFAULT ‘0’,

max_user_connections int(11) unsigned NOT NULL DEFAULT ‘0’,

plugin char(64) COLLATE utf8_bin DEFAULT ‘’,

authentication_string text COLLATE utf8_bin,

PRIMARY KEY (Host,User)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT=‘Users and global privileges’;


– Records of user


INSERT INTO user VALUES (‘localhost’, ‘root’, ‘*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘Y’, ‘’, ‘’, ‘’, ‘’, ‘0’, ‘0’, ‘0’, ‘0’, ‘’, ‘’);

重启mysql 我的方法是

先 ps -ef|grep mysq  查找所有mysql进程

然后全部kill掉  kill -9 上方红色方框圈住的进程号

重新启动  service mysql restart

当mysql版本为5.7以上时 用service mysqld restart 多了个“d”

连接成功!

那么,我们应该做些什么,才能防止数据库被恶意访问删除呢?或者是有什么手段可以快速恢复被删的文件?


开启Binlog日志

MySQL Server 的四种类型的日志:Error Log、General Query Log、Slow Query Log 和 Binary Log

Error Log 即 错误日志,记录 mysqld 发生的一些错误。

General Query Log 即 一般查询日志,记录 mysqld 正在做的事情,如客户端的连接和断开、来自客户端每条 Sql Statement 记录信息;如果你想准确知道客户端究竟传了什么内容给服务端,这个日志就非常管用了,当然了这货非常影响性能。

Slow Query Log 即 慢查询日志,记录一些查询执行较慢的 SQL 语句,这个日志非常常用,主要是给开发者调优用的。

Binary Log 简称 Binlog 即 二进制日志文件,这个文件记录了mysql所有的 DML 操作。通过 Binlog 日志我们可以做数据恢复,做主主复制和主从复制等等。对于开发者可能对 Binlog 并不怎么关注,但是对于运维或者架构人员来讲是非常重要的。

简而言之,Binlog 两个重要的用途——复制和恢复,很多十分好用的 MySQL 体验比如说增量备份,回滚至指定时间以及上面提到的主主和主从等等都依赖于 Binlog。

检查是否开启

ON表示开启 OFF表示未开启

修改 my.cnf 文件开启Binlog,一般来说都位于 /etc/my.cnf 这边,部分像 MariaDB 可能是修改/etc/my.cnf.d/server.cnf 文件

在 [mysqld] 下写入如下内容:

log_bin = /var/lib/mysql/bin-log

log_bin_index = /var/lib/mysql/mysql-bin.index

expire_logs_days = 7

server_id = 0002

binlog_format = ROW

解释一下:

log_bin = /var/lib/mysql/bin-log , 开启 Binlog 并写明存放日志的位置

log_bin_index = /var/lib/mysql/mysql-bin.index , 指定索引文件的位置。

expire_logs_days = 7 ,删除超出这个变量保留期之前的全部日志被删除

server_id = 0002 , 指定一个集群内的 MySQL 服务器 ID,如果做数据库集群那么必须全局唯一,一般来说不推荐 指定 server_id 等于 1。

binlog_format = ROW,设置方面提到过的三种 Binlog 的日志模式。

重启数据库

再次检测  show global variables like ‘log_bin’;

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

也许您对下面的内容还感兴趣: