基于 Ubuntu 安装 MySQL数据库、编码的设置和开机自启动设置

本部分主要介绍:基于 Ubuntu18.04 安装 MySQL5.7 数据库(还可以源码包安装,但是复杂,分清重点工作)、编码的设置、端口号的修改和开机自启动设置,主要使用通过配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf 进行配置,需要其它配置时,可以阅读 官方说明文档

mac 安装 Mysql

  1. 参考地址

下载安装包

  1. 下载地址

    • 官方下载地址

    • 官方说明文档

  2. 步骤一

    • 如图,使用 APT 的仓库(还有 YUM 的仓库)

      Mysql下载地址1.jpg
  3. 步骤二

    • 查看软件包包含 MySQL 的版本,以及点击下载

      mysql下载地址2.jpg
  4. 步骤三

    • 获取 MySQL 的 setup 包,或者获取此包的下载地址,使用 curl/wget 命令下载 软件包下载地址

      mysql下载地址3.jpg
  5. 下载软件包

    • 执行 wget https://dev.mysql.com/get/mysql-apt-config_0.8.15-1_all.deb ,下载到当前地址

使用 MySQL 的 setup 包,选择 MySQL 的版本及配置

  1. 安装 MySQL 的 setup 包

    • 执行 sudo dpkg -i mysql-apt-config_0.8.15-1_all.deb
  2. 选择 MySQL 的版本

    • 设置版本选择

      mysql软件包设置.jpg
    • 选择 5.7 版本

      mysq版本设置.jpg
    • 确定 MySQL 的版本设置

      mysql设置确定.jpg
  3. 设置 MySQL 的密码

    • 输入密码,以及确认密码

      mysql密码设置.jpg

安装 MySQL

  1. 更新源

    • 执行 sudo apt update
  2. 安装 MySQL

    • 执行 sudo apt-get install mysql-server
      shen@shen-Ubuntu:~$ sudo apt-get install mysql-server
      正在读取软件包列表... 完成
      正在分析软件包的依赖关系树 
      正在读取状态信息... 完成 
      下列软件包是自动安装的并且现在不需要了:
       linux-headers-4.15.0-96 linux-headers-4.15.0-96-generic
       linux-image-4.15.0-96-generic linux-modules-4.15.0-96-generic
       linux-modules-extra-4.15.0-96-generic
      使用'sudo apt autoremove'来卸载它(它们)。
      将会同时安装下列软件:
       libaio1 libmecab2 mysql-client mysql-community-client mysql-community-server
      下列【新】软件包将被安装:
       libaio1 libmecab2 mysql-client mysql-community-client mysql-community-server
       mysql-server
      升级了 0 个软件包,新安装了 6 个软件包,要卸载 0 个软件包,有 1 个软件包未被升级。
      需要下载 51.1 MB 的归档。
      解压缩后会消耗 314 MB 的额外空间。
      您希望继续执行吗? [Y/n] y
      
  3. 查看 MySQL 状态

    • 执行 systemctl status mysql

       shen@shen-Ubuntu:~$ systemctl status mysql
      ● mysql.service - MySQL Community Server
       Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
       Active: active (running) since Tue 2020-05-26 11:02:03 CST; 1min 18s ago
       Process: 1062 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysql
       Process: 944 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exite
       Main PID: 1068 (mysqld)
       Tasks: 27 (limit: 2234)
       CGroup: /system.slice/mysql.service
       └─1068 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld
      ​
      5月 26 11:02:00 shen-Ubuntu systemd[1]: Starting MySQL Community Server...
      5月 26 11:02:03 shen-Ubuntu systemd[1]: Started MySQL Community Server...
      
    • 状态 Active: active (running) since Tue 2020-05-26 11:02:03 CST; 1min 18s ago

  4. Mysql 的普通命令

    • 开启服务 systemctl start mysql

    • 关闭服务 systemctl stop mysql

    • 重启服务 systemctl restart mysql

    • 连接 MySQL 服务

      1. 官方给出命令

        mysql --host=localhost --user=myname --password=password mydb
        mysql -h localhost -u myname -ppassword mydb
        
      2. 一般连接命令(本机连接,端口号 3306)

        • mysql -u root -p

设置编码格式及端口号

说明:MySQL 的配置文件位置 /etc/mysql/mysql.conf.d/mysqld.cnf

  1. 查看数据库的编码格式

    • 连接服务 mysql -u root -p123

    • 查看 MySQL 的编码格式 show variables like 'character%';

      mysql> show variables like 'character%';
      +--------------------------+----------------------------+
      | Variable_name            | Value                      |
      +--------------------------+----------------------------+
      | character_set_client     | utf8                       |
      | character_set_connection | utf8                       |
      | character_set_database   | latin1                     |
      | character_set_filesystem | binary                     |
      | character_set_results    | utf8                       |
      | character_set_server     | latin1                     |
      | character_set_system     | utf8                       |
      | character_sets_dir       | /usr/share/mysql/charsets/ |
      +--------------------------+----------------------------+
      8 rows in set (0.01 sec)
      
    • 将编码格式为 latin1 设置为 utf8 。这里只有 character_set_servercharacter_set_database 编码为 latin1 ,而 database 编码跟随 server 编码,所以修改 server 编码即可(在配置文件中修改)。

  2. 修改配置文件

    • MySQL 的配置文件位置 /etc/mysql/mysql.conf.d/mysqld.cnf

    • 配置文件内容

      29 [mysqld]
      30 pid-file    = /var/run/mysqld/mysqld.pid
      31 socket      = /var/run/mysqld/mysqld.sock
      32 datadir     = /var/lib/mysql      # 数据库数据存放位置
      33 log-error   = /var/log/mysql/error.log
      34 # By default we only accept connections from localhost
      35 bind-address    = 127.0.0.1
      36 # Disabling symbolic-links is recommended to prevent assorted security risks
      37 symbolic-links=0
      
    • 向配置文件添加内容,要在服务器启动时选择字符集和排序规则 。官方参考地址

      [mysqld]                      # 指定选项
      character-set-server=utf8       # 服务器编码
      collation-server=utf8_general_ci   # 排序规则
      
    • 如果客户端 character_set_client 的编码 latian1 ,添加内容。官方参考地址

      [client]
      default-character-set=utf8
      
  3. 查看端口号(默认端口号为 3306)

    • 执行 show variables like "port";
      mysql> show variables like "port";
      +---------------+-------+
      | Variable_name | Value |
      +---------------+-------+
      | port          | 3307  |
      +---------------+-------+
      1 row in set (0.00 sec)
      
  4. 修改端口号

    • 添加内容
      [client]
      port=3307
      

MySQL 开机自启动设置

说明:参考地址

  1. 使用 systemd 管理 MySQL 服务

    • 禁止开机自启

      sudo systemctl disable mysql
      
    • 开启开机自启

       sudo systemctl enable mysql
      
  2. 使用 systemd 管理服务,前提是使用 APT 安装的 MySQL

你可能感兴趣的:(基于 Ubuntu 安装 MySQL数据库、编码的设置和开机自启动设置)