admin 发布的文章

就是支持的Ciphers不一致导致的。
先用

ssh -Q cipher

查看一下支持哪些,然后放到/etc/ssh/ssh_config里面。
里面有一行是关于Ciphers的,注释了的。在它下一行追加就行了。

Ciphers 3des-cbc,aes128-cbc,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com

新版本默认已经不允许导入导出文件了。
想查看一些敏感的变量信息,不一定通过show variable来查看。因为注入点是不支持show的,只能select。
这时候可以这样:

MySQL [(none)]> select @@pid_file;
+-----------------------+
| @@pid_file            |
+-----------------------+
| /data/mysql/mysql.pid |
+-----------------------+
1 row in set (0.00 sec)

或者

MySQL [(none)]> select @@slow_query_log_file;
+----------------------------+
| @@slow_query_log_file      |
+----------------------------+
| /data/mysql/mysql-slow.log |
+----------------------------+
1 row in set (0.00 sec)

其实就是把show variables;结果中的key前面加上@@,然后再select。
能知道目标的一些敏感信息,比如日志路径,主目录,常见目录等等

某超大型数据库,从以前的VM里面拷出来到现在的电脑上。只有数据文条件FRM MYD MYI。庆幸的是,Myisam,不是INNODB。
本以为很容易就恢复成功了。结果一波三折。
1,ERROR 1017 (HY000): Can't find file: 'tablename' (errno: 2)
直接拷贝数据文件,提示这个错误。
在phpMyAdmin里面查看,所有的表都是“使用中”。
修复,优化都不行。都提示这个错误。
网上搜了很多方案,都不好使。
最后找到这篇:
https://my.oschina.net/u/4319720/blog/3340748
先恢复数据库的建表信息。
拿一个表测试了下,是没问题的。能正确的恢复出来。
然后把原来表的MYD,MYI拷过去。
再次修复,提示:
correct key file for table
这次使用
REPAIR TABLE tablename USE_FRM;
成功搞定。数据记录出来了。。

后来,我发现在原来的数据库目录,直接
mv .myd .MYD
chmod 0640 *
也可以恢复数据。。
气死我了