MySQL 基础知识总结

本篇博客记录了 MySQL 的常用基础知识,可用于日常学习。

MySQL 主机 127.0.0.1 与 localhost 的区别

1、mysql -h 127.0.0.1 的时候,使用 TCP/IP 连接,mysql 服务器认为该连接来自于 127.0.0.1 或者是 localhost.localdomain

2、mysql -h localhost 的时候,使用 Unix Socket 连接,不是使用 TCP/IP 连接,不受网络防火墙和网卡相关的的限制,此时,mysql 服务器认为该客户端是来自 localhost

3、mysql 权限管理中的 localhost 有特定含义。

虽然两者连接方式有所区别,但当 localhost 为默认的 127.0.0.1 时,两种连接方式使用的权限记录都是以下的1.row的记录(因为记录在前,先被匹配)

1
2
3
4
5
6
7
8
*************************** 1. row ***************************
                Host: localhost
                User: root
......

*************************** 2. row ***************************
                Host: 127.0.0.1
                User: root

InnoDB 引擎

InnoDB 引擎为独立表空间模式,每个数据库的每个表都会生成一个数据空间。

独立表空间的优点:

  • 每个表都有自己独立的表空间。
  • 每个表的数据和索引都会存在自己的表空间中。
  • 可以实现单表在不同的数据库中移动。
  • 空间可以回收(除 drop table 操作外,表空间不能自己回收)

独立表空间的缺点:

  • 单表增加过大,如超过100G。

结论:

共享表空间在 insert 操作上稍有优势,其他都没独立表空间表现好。当启用独立表空间时,需要合理调整 innodb_open_files 参数的值。

updatedupdated2018-10-222018-10-22
加载评论