目录

1.在 Linux 上安装好 MySQL 8.0 之后,默认数据目录的具体位置是什么?该目录下都保存哪些数据库 组件?在目录 /usr/sbin、/usr/bin、/etc、/var/log 分别保存哪些组件?

2.使用 mysql_config_editor 客户机程序可以创建加密登录路径凭证,请问加密过的用户名、口令和 主机选项保存在什么地方?如何以文本的方式查看加密过的信息?

3.在 MySQL 中,如何更改 root 账户口令,请具体写出你所熟悉的两种。

4.写出在 Linux 7 中启动和停止 MySQL 服务器的命令。

5.MySQL 服务器进程 mysqld 由哪三层组成,从各自所实现的功能角度分别加以说明。

6.MySQL 支持的通讯协议都有哪些?其连接方式和所支持的操作系统有何不同。

总结


MySQL 是一款广泛应用的开源关系型数据库管理系统,尤其在 Linux 环境下得到了广泛的应用。本文将介绍 MySQL 8.0 在 Linux 上的安装过程、常见的管理操作、服务器架构及其他关键技术,帮助你深入了解和高效管理 MySQL 数据库。

1.在 Linux 上安装好 MySQL 8.0 之后,默认数据目录的具体位置是什么?该目录下都保存哪些数据库 组件?在目录 /usr/sbin、/usr/bin、/etc、/var/log 分别保存哪些组件?

在 Linux 上安装 MySQL 8.0 后,数据库系统会将各类组件和数据存储在不同的目录中。

  • 默认数据目录
    默认的数据目录位于 /var/lib/mysql,其中存储了 mysql 数据库及其他数据库目录、InnoDB 日志文件和系统表空间。

  • 常见目录组件

    • /usr/sbin:存放 MySQL 服务器的执行文件 mysqld

    • /usr/bin:存放 MySQL 客户端程序 mysql 以及其他客户端工具。

    • /etc:存放 MySQL 配置文件 my.cnf

    • /var/log:存放 MySQL 生成的日志文件。

理解 MySQL 目录结构有助于快速定位问题,尤其在故障排除和日志分析时尤为重要。

2.使用 mysql_config_editor 客户机程序可以创建加密登录路径凭证,请问加密过的用户名、口令和 主机选项保存在什么地方?如何以文本的方式查看加密过的信息?

  • 加密保存的位置
    加密后的登录信息存储在用户主目录下的 .mylogin.cnf 文件中。该文件存储了 MySQL 登录凭证,包括用户名、密码和主机等敏感信息。

  • 查看加密信息
    可以使用以下命令查看加密后的登录信息:

    mysql_config_editor print

    这将显示存储在 .mylogin.cnf 文件中的加密信息。

3.在 MySQL 中,如何更改 root 账户口令,请具体写出你所熟悉的两种。

  • 方法一:通过 MySQL 命令行修改: 登录到 MySQL 服务器后,可以使用以下 SQL 语句更改 root 账户的密码:

    ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
  • 方法二:使用 mysqladmin 工具: 可以使用 mysqladmin 客户端工具来修改密码。执行以下命令:

    mysqladmin --user=root --password=旧密码 password 新密码

注意:更改密码时,要确保密码的复杂性和安全性,以防止数据库受到攻击。

4.写出在 Linux 7 中启动和停止 MySQL 服务器的命令。

在 Linux 7 中,可以通过 systemctl 命令来启动和停止 MySQL 服务器。

  • 启动 MySQL 服务

    systemctl start mysql
  • 停止 MySQL 服务

    systemctl stop mysql

这些命令使得管理员能够方便地管理 MySQL 服务的运行状态。

5.MySQL 服务器进程 mysqld 由哪三层组成,从各自所实现的功能角度分别加以说明。

MySQL 服务器进程 mysqld 由三层组成,每一层都负责不同的功能:

  • 连接层
    连接层负责处理每个客户端的连接请求。它会为每个连接分配一个线程,并进行身份验证、查询的解析与执行。

  • SQL 层
    SQL 层处理查询的解析、优化、执行和日志记录。它主要负责 SQL 语句的分析和优化,并决定如何从存储层获取数据。

  • 存储层
    存储层负责实际的数据存储和管理。常见的存储引擎有 InnoDB、MyISAM、MEMORY 和 NDBCLUSTER 等。InnoDB 是事务型的存储引擎,支持外键,并提供高效的事务处理。

小知识:InnoDB 和 NDBCLUSTER 是支持事务的存储引擎,而 MyISAM 不支持事务处理。

6.MySQL 支持的通讯协议都有哪些?其连接方式和所支持的操作系统有何不同。

  • TCP/IP 协议
    这是最常见的连接方式,支持跨网络连接。客户端和 MySQL 服务器可以通过 TCP/IP 协议进行通信。

  • Unix Socket 协议
    在 Linux 系统中,客户端可以通过 Unix Socket 连接到 MySQL 服务器。此方式通常用于同一台机器上的客户端与服务器通信,连接速度更快。

  • Named Pipe 协议
    适用于 Windows 系统,在同一台机器上进行通信时,可以使用命名管道连接 MySQL 服务器。

  • Shared Memory 协议(仅 Windows 系统):
    客户端和服务器可以通过共享内存进行通信,速度快,适合同一台机器上的本地访问。

  • 总结:MySQL 根据不同操作系统提供多种连接方式,Linux 系统通常用 TCP/IP 或 Unix Socket,Windows 系统可以用 TCP/IP、Named Pipe 或 Shared Memory,使得连接灵h活且高效。

总结

本文详细介绍了 MySQL 8.0 在 Linux 环境下的常见安装和管理操作,包括数据目录、加密凭证管理、密码更改、服务启动停止命令、三层架构的功能划分以及支持的通讯协议等。掌握这些基本的 MySQL 管理操作,可以帮助数据库管理员更加高效地维护和管理数据库,确保系统的稳定和安全。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐