mysql 高级第一天:

    1. 简介 — 了解
    1. 2. mysql 高手怎么练成!
    2. 3. mysql 安装 linux
    3. 第一种:源码解压!
    4. 第二种: yum 安装!
    5. 第三种: rpm 安装!
    6. 第四种:docker docker pull mysql docker run -it ...
    7. 依次执行:
    8. rpm -ivh mysql-community-common-5.7.28-1.el7.x86_64.rpm
    9. rpm -ivh mysql-community-libs-5.7.28-1.el7.x86_64.rpm
    10. rpm -ivh mysql-community-client-5.7.28-1.el7.x86_64.rpm
    11. rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm
    12. 启动服务:
    13. systemctl start/stop/restart/status mysqld;
    14. 初始化:
    15. mysqld --initialize --user=mysql
    16. mysql 的核心配置文件
    17. /etc/my.cnf;
    18. /var/log/mysqld.log;
    19. 4. mysql 的字符集:
    20. 默认配置:latin1
    21. 改成utf8格式:
    22. [client]
    23. default-character-set=utf8
    24. [mysqld]
    25. character-set-server=utf8
    26. collation-server=utf8_general_ci
    27. 5. mysql 的用户与权限:
    28. a. create user zhang3 identified by '123123';
    29. 使用root 用户 创建用户同时赋予权限!
    30. b. grant all privileges on *.* to joe@'%' identified by '123'; flush privileges;
    31. c. REVOKE select,insert,update,delete ON *.* FROM joe@'%';
    32. 6. 利用远程工具访问mysql 数据!
    33. grant all privileges on *.* to root@'%' identified by 'root';
    34. 7. 有关于mysql 的配置 sql_mode
    35. 修改sql_mode = 'ONLY_FULL_GROUP_BY';
    36. mysql 5.7 sql_mode = ONLY_FULL_GROUP_BY 说明:在查询的时候,使用group by 要遵循一定的规则!
    37. a. 查询项 必须是分组字段其中之一!
    38. b. 查询项 可以有组函数的出现!
    39. 综上所述:
    40. 使用group by 进行分组的时候,查询项目,要么是组函数,要么是分组的字段!
    41. :my.cnf 配置文件!
    42. 8. mysql 的逻辑架构
    43. 连接层:
    44. 服务层:
    45. 引擎层:
    46. 存储层:
    47. 开启查询缓存:
    48. vim /etc/my.cnf;
    49. query_cache_type=1
    50. 每一条sql 语句执行的时候:至少用到一个索引! 主键!
    51. 9. 数据结构:
    52. 线性结构:
    53. 顺序存储:
    54. 链式存储:
    55. 集合能够体现!
    56. 非线性结构:
    57. 多维数组:
    58. 时间复杂度:
    59. 最好hash!次之平衡树!
    60. 程序注重的时间复杂度!
    61. 10. 索引块!
    62. 底层应该使用树来存储!
    63. B树:
    64. 即叶子节点和非叶子节点都存放数据。
    65. 面试题:
    66. 为啥使用的B+Tree
    67. 数据都存储在叶子节点!
    68. MySQLInnoDB引擎的存储方式也是B+树机制。
    69. 11. 存储引擎:
    70. mysql> show engines;
    71. +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
    72. | Engine | Support | Comment | Transactions | XA | Savepoints |
    73. +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
    74. | InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
    75. | MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
    76. 12. 7join
    77. 重点:
    78. 1. mysql 安装!
    79. 2. 授权
    80. 3. 核心配置文件my.cnf
    81. 4. group by 的用法!
    82. 5. hash 效率最高 平衡树次之!
    83. mysql innodb 默认存储引擎 采用的B+Tree