[Mysql数据库] 知识点总结1
1. MySQL 的 RPM 安装通常分为不同的包,包括 Server、Common、Client、Devel、Libs、Libscompat、Test、Source,请写出上述每个包的功能。
答:Server: MySQL 服务器的二进制文件、配置和数据库
Common:服务器和客户端库的通用文件
Client:连接到数据库服务器的客户机程序
Devel:编译 MySQL 程序时需要的库
Libs:连接到 MySQL 的应用程序所使用的静态库
Libs-compat:早期 MySQL 安装的共享兼容性库
Test:MySQL 测试套件
Source:MySQL 源代码 对于标准安装,必须至少安装 common、server 和 client 包。
2. MySQL 除了 RPM 安装之外,在 Linux 平台上还有那种形式的安装,请给出简单的说明。
答:1)还有在 debian 和 ubuntu 系统上的 deb 包格式安装,过程类似于 rpm
2)使用 yum 或 atp 从资料档案库的安装
3)从源代码安装,需要编译
4)从公有云上以容器形式提供服务的安装。
3. 在 Windows 上安装 MySQL 之后,mysysqld 服务器程序、mysql 客户机程序、my.ini 配置文件、 mysql 系统数据库、二进制日志文件分别保存在什么位置?
答:安装程序将 MySQL 8.0 放在 C:\Program Files\MySQL\MySQL Server 8.0 目录中
my.ini 配置文件直接存放在安装目录下
mysysqld 和 mysql 客户机在 \bin 目录
mysql 系统数据库、二进制日志文件存放在 \data 目录。
4. 请说出 mysql.server、mysqld_safe、mysqld_multi 三个服务器助手程序的作用。
答:mysql.server:用作 mysqld_safe 的包装器,适用于使用 System V 运行级目录的系统。
mysqld_safe:记录 mysqld 的错误日志,同时启动并监视 mysqld,如果 mysqld 异常 终止,会重新启动它。
mysqld_multi:是用 Perl 编写的脚本,用来简化单个主机上多台服务器管理的,它可以启动 或停止服务器,并报告服务器是否正在运行。
5. 在 Linux 上安装好 MySQL 8.0 之后,默认数据目录的具体位置是什么?该目录下都保存哪些数据库组件?在目录 /usr/sbin、/usr/bin、/etc、/var/log 分别保存哪些组件?
答:默认数据目录是 /var/lib/mysql,保存有 mysql 数据库和其它数据库目录、InnoDB 日志 文件和系统表空间。
/usr/sbin:mysqld 服务器。
/usr/bin:mysql 和其它客户机程序。
/etc:my.cnf 配置文件。
/var/log:日志文件。
6. 使用 mysql_config_editor 客户机程序可以创建加密登录路径凭证,请问加密过的用户名、口令和 主机选项保存在什么地方?如何以文本的方式查看加密过的信息?
答:加密过的用户名、口令和主机选项保存在 .mylogin.cnf 加密登录文件中,该文件位于当前用 户的主目录中。
可以使用 mysql_config_editor print 命令查看加密过的信息。
7. 在 MySQL 中,如何更改 root 账户口令,请具体写出你所熟悉的两种。
答:登录 MySQL 服务器,使用 ALTER USER USER() IDENTIFIED BY '****';
使用 mysqladmin 客户机,比如:mysqladmin --user=root --password password
8. 写出在 Linux 7 中启动和停止 MySQL 服务器的命令。
答:systemctl start mysql 和 systemctl stop mysql 。
9. MySQL 服务器进程 mysqld 由哪三层组成,从各自所实现的功能角度分别加以说明。
答:有连接层、SQL 层、存储层组成。
- 连接层:为每个连接维护一个线程,进行身份验证、处理查询执行。
- SQL 层:包括了解析、授权分析、优化、执行、日志记录。
- 存储层:管理表数据,常见的存储引擎有 InnoDB、MyISAM、MEMORY 和 NDBCLUSTER 等。
InnoDB 和 NDBCLUSTER 是仅有的两个支持外键的事务性 MySQL 存储引擎。
10. MySQL 支持的通讯协议都有哪些?其连接方式和所支持的操作系统有何不同。
答:TCP/IP:用于本地或远程连接,支持跨平台。支持所有操作系统
Socket file:仅用于本地连接,支持 UNIX衍生的操作系统,如Linux,BDS,Mac OS
Named Pipe(命名管道):仅在 Windows 系统下支持,用于本地连接。
Shared Memory(共享内存):仅在 Windows 系统下支持,用于本地连接。