MySQL安全与配置

Catalogue
  1. 1. CentOS 7
    1. 1.1. 安装
    2. 1.2. 配置
    3. 1.3. 重置密码

CentOS 7

安装

  • yum install mariadb-server mariadb
  • 重置mysql密码

    • mysql -u root //直接回车进入mysql控制台
    • 1
      2
      3
      mysql > use mysql;
      mysql > update user set password=password('123456') where user='root';
      mysql > exit;
  • 启动mysql service mariadb start

  • 停止mysql service mariadb stop
  • 查看mysql运行状态 service mariadb status
  • 重启mysql service mariadb restart

配置

  • 编辑文件vi /etc/my.cnf
  • [mysqld]的项下添加配置内容

    • 配置最大连接数max_connections=1000
    • 配置字符编码character_set_server=utf8
    • 配置不区分大小写lower_case_table_names=1
    • 最大等待时间wait_timeout=31536000
    • 最大释放时间interactive_timeout=31536000
      1
      2
      3
      4
      5
      character_set_server=utf8
      max_connections=1000
      lower_case_table_names=1
      wait_timeout=31536000
      interactive_timeout=31536000
  • 配置允许远程访问

    • grant all privileges on *.* to root@"%" identified by "12345a" with grant option;
    • FLUSH PRIVILEGES;

重置密码

  • 先停止数据库服务service mysqld stop
  • 以安全模式启动MySQLmysqld_safe --skip-grant-tables --skip-networking &
    • 注意我们加了--skip-networking,避免远程无密码登录MySQL
  • 直接root免密登录mysql -uroot
  • 重设密码
    • use mysql
    • MySQL 5.7.6 以及最新版本:update user set authentication_string=PASSWORD('12345a') where User='root';
    • MySQL 5.7.5 或更早之前的版本:update user set password=PASSWORD('12345a') where User='root';
  • 停止安全模式service mysqld stop
  • 正常启动service mysqld start
  • Done~