标签 mysql 下的文章

MySQL 忘记密码怎么办

之前浪费钱对于个人服务器也开通了 DB 和服务的隔离,现在看来不过是浪费钱,所以想要合并一下,结果发现!Service 服务器上安装好了 MySQL!我!却!把密!码!忘!了!

找了找之后发现还是可以抢救一下的:

找到配置文件地址

mysql --help | grep -A 1 "Default options"

Ubuntu 16 可能在这个位置:/etc/mysql/mysql.conf.d/mysqld.cnf

编辑文件

vim /etc/mysql/mysql.conf.d/mysqld.cnf

[mysqld] 的下一行加上:skip-grant-tables

重启服务

sudo service mysql restart

之后可以不用密码登录了:mysql -u root

修改密码:

mysql> FLUSH PRIVILEGES;

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MyNewPass';

收工

完成后记得把 skip-grant-tables 删掉(或者注释掉),否则是一个巨大的安全隐患。

参考

MySQL 子查询使用LIMIT

昨天在帮受泽写一句查询的时候才发现MySQL在子查询中是无法直接使用Limit的,不仅低版本没法用,官方手册表明连最新版(5.7)依旧不能用:

https://dev.mysql.com/doc/refman/5.7/en/subquery-restrictions.html

当然,实在想要搞也是可以的,在子查询里再嵌套一层就行了。

比如原句:

select * from table where id in (select id from table limit 10);

- 阅读剩余部分 -