海运的博客

Mysql基本安全设置

发布时间:May 27, 2012 // 分类:数据库 // No Comments

1.设置或修改Mysql root密码:
默认安装后空密码,以mysqladmin命令设置密码:

mysqladmin -uroot password "password"

Mysql命令设置密码:

mysql> set password for root@localhost=password('password);

更改密码:

update mysql.user set password=password('password') where user='root';
flush privileges;

2.删除默认的数据库和用户

drop database test;
use mysql;
delete from db;
delete from user where not(host="localhost" and user="root");
flush privileges;
  1. 更改默认root账号名称:
update mysql.user set user="admin" where user="root";
flush privileges;
  1. 本地文件安全:
set-variable=local-infile=0
  1. 禁止远程连接mysql,远程管理可通过phpmyadmin,编辑my.cnf在[mysqld]添加:
skip-networking

6.最小权限用户:

#CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
GRANT USAGE ON *.* TO 'user'@'localhost' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE  ON `databases`.* TO 'user'@'localhost';  
  1. 限制普通用户浏览其它数据库,编辑my.cnf在[mysqld]添加:
--skip-show-database

8.快速修复MySQL数据库
修复数据库

mysqlcheck -A -o -r -p

修复指定的数据库

mysqlcheck  -o -r database -p

9.跟据内存的大小选择MySQL的配置文件:

my-small.cnf # > my-medium.cnf # 32M - 64M
my-large.cnf # memory = 512M
my-huge.cnf # 1G-2G
my-innodb-heavy-4G.cnf # 4GB
分类
最新文章
最近回复
  • spartan2: https://dashboard.hcaptcha.com/welcome_accessib...
  • 海运: 应该能,在购买页面先手工跳过cf机器验证,后续一定时间内不更换ip应该不会再次验证。
  • spartan: 大佬斯巴达开启了CF的机器识别验证,请问插件能自动跳过吗? 另外这个脚本有没有简单使用说明,新...
  • vincent: 膜拜大佬
  • 海运: proxy-header或proxy_protocol
  • liangjw: 如果是 内部调用 或者 中间存在 代理 而上一个代理又在内网 ,那怎么处理来自代理私有IP?
  • chainofhonor: 感谢,用dnsmasq设置自动判断BIOS和UEFI成功了
  • 海运: 不好意思,这个是很多年前的,现在也许已经不适用,我现在也不用多线了。
  • CQ: -m state --state NEW 替换成-m conntrack --ctstate NEW
  • CQ: 你好,我入站已经成功分流,但是不知道出站怎么设置,PREROUTING替换成POSTROUTI...