Ubuntu Server 16.04 MySQL Configuration Guide

注意:本指南只适合开发环境,用于开发测试用。生产环境下请慎用
(推荐使用 mysql_secure_installation 进行安全安装。)

序言

Ubuntu Server 14.04 之前的版本,MySQL 的配置文件默认不分类。通常情况下,/etc/mysql/my.cnf 文件中会包含 MySQL Server 的全部配置信息。
在Ubuntu Server 16.04 之后,使用 apt 安装的 MySQL Server 会默认对配置文件进行分类。 /etc/mysql/my.cnf 负责声明配置文件的引用目录。

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

默认安装后,配置文件保存在以下两个文件夹中。之前在 my.cnf 中指定的配置会按照模块类别分散在各个文件中。

举个例子:

  1. 解决 MySQL 中文乱码的问题

    之前解决中文乱码,要在 my.cnf 中作如下修改:

    [client]
    default-character-set = utf8
    
    [mysqld]
    default-storage-engine = INNODB 
    character-set-server = utf8 
    collation-server = utf8_general_ci 
    

    在 Ubuntu Server 16.04 & MySQL 中,使用如下修改:

    • /etc/mysql/conf.d 中新建 client.cnf ,键入如下内容:

      [client]
      port = 3306
      socket = /var/run/mysqld/mysqld.sock
      default-character-set = utf8
      
    • /etc/mysql/mysql.conf.d/mysqld.cnf 中找到 [mysqld] 标签,并在标签下键入如下内容:

      default-storage-engine = INNODB 
      character-set-server = utf8 
      collation-server = utf8_general_ci 
      
    • 重启 MySQL,问题解决。

  2. 解决 MySQL 远程访问返回错误码 61 的问题

    默认已经建立了允许远程访问的 MySQL 用户,直接给出 16.04 下的解决方案:

    • /etc/mysql/mysql.conf.d/mysqld.cnf 中找到 [mysqld] 标签,并在标签下键入如下内容:

      skip-name-resolve
      
    • 同时注释掉或删除掉该标签下的 bind-address = 127.0.0.1 属性。

    • 重启 MySQL,问题解决。

** 在解决上述问题时,请在完成每一步之后重启 MySQL 验证,一气完成全部修改可能会造成 MySQL 无法启动。**

你可能感兴趣的:(Ubuntu Server 16.04 MySQL Configuration Guide)