linux安装mysql

DB哥MySQL高级教程-系统学习MySQL共149课时
加我微信公众号免费学:DB哥
文末有MySQL高级课程目录

1.mysql下载

①进入mysql官方网站:https://www.mysql.com/ 点击进入DOWNLOADS下载页面

adc23260cab5e5d4d247651cd9faf7fe.jpeg

②进入下载页面后,找到mysql社区版本MySQL Community (GPL) Downloads点击进入

7806541c18bf7a5c70e963c482ef7298.jpeg

③进入社区版页面后,进行如下点击

4b78982c6b4599c50b328c9434a8b7b2.jpeg

④进入后,点击mysql版本归档页面

18e94e37f77840eec1460dd8ac260dd8.jpeg

⑤进入mysql版本归档页面后选择你所需要的mysql版本、操作系统及系统版本,然后点击download即可下载

5f5c13082a689491fb989f6037dca606.jpeg


2.二进制安装MySQL5.7.26(该方式适用于在linux系统下安装MySQL5.7和MySQL8.0的各个小版本)

使用xshell连接到服务器,执行以下操作

  。创建MySQL虚拟用户

  useradd -s /sbin/nologin -M mysql #创建用户命令
  
  id mysql #查看是否创建成功
 
  

  。创建目录

  mkdir -p /server/tools
  mkdir -p /opt/mysql
  mkdir -p /data/mysql/mysql3306/{data,logs}
  cd /server/tools #进入到该目录
 
  

  。将下载的文件上传

  rz #上传mysql二进制文件
  ll #查看文件是否上传成功
  yum install -y lrzsz #如没有rz命令,可通过yum安装
  

  。解压二进制包

  tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
 

  。将软件部分移动到指定目录

  mv mysql-5.7.26-linux-glibc2.12-x86_64  /opt/mysql/mysql-5.7.26

  。创建软连接

  ln -s /opt/mysql/mysql-5.7.26/ /usr/local/mysql

  。删除mariadb(避免与MySQL冲突)

  rpm -e --nodeps mariadb-libs
  

  。配置文件整理(该配置参数只用于测试环境。配置参数影响着MySQL数据库的性能及安全,生产中要慎重!!!)

  vim /data/mysql/mysql3306/my3306.cnf
  
  [mysqld]
  
  user=mysql
  
  basedir=/usr/local/mysql
  
  datadir=/data/mysql/mysql3306/data
  
  socket = /data/mysql/mysql3306/mysql.sock
  
  server_id = 1
  
  port = 3306
  
  log_error=/data/mysql/mysql3306/logs/error.log
  
  log_bin=/data/mysql/mysql3306/logs/mysql-bin
  
  binlog_format=row
  
  gtid_mode=on
  
  enforce_gtid_consistency=true
  
  log_slave_updates=1
  
  max_connections=1024
  
  wait_timeout=60
  
  sort_buffer_size=2M
  
  max_allowed_packet=32M
  
  join_buffer_size=2M
  
  innodb_buffer_pool_size=128M
  
  innodb_flush_log_at_trx_commit=1
  
  innodb_log_buffer_size=32M
  
  innodb_log_file_size=128M
  
  innodb_log_files_in_group=2
  
  binlog_cache_size=2M
  
  max_binlog_cache_size=8M
  
  max_binlog_size=512M
  
  expire_logs_days=7
  
  slow_query_log=on
  
  slow_query_log_file=/data/mysql/mysql3306/logs/slow.log
  
  long_query_time=0.5
  
  log_queries_not_using_indexes=1
  

  。安装MySQL依赖包

  yum install libaio-devel -y
  yum install numactl -y
  

  。更改MySQL相关目录的用户组

  chown -R mysql:mysql /data/*
  

  。初始化数据库

  /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf --initialize-insecure --user=mysql --basedir=/usr/local/mysql  --datadir=/data/mysql/mysql3306/data
  
  (MySQL8.0 、MySQL5.7都是通过mysqld进行初始化数据)
  --initialize-insecure :表示不给默认root用户创建密码,可以空密码登陆

  。加入环境变量

  vim /etc/profile #vim编辑
  export PATH="/usr/local/mysql/bin:$PATH"
  
  source /etc/profile #执行脚本文件,使得环境变量生效
  

  。启动MySQL

  mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf &
 

  。查看是否启动成功

  netstat -lntup |grep mysql #如有指定的mysql进程,就表示mysql启动成功
  

 

  。连接mysql

  #初始化时没有给root用户指定密码,所以可以空密码连接
  mysql -uroot -p -S /data/mysql/mysql3306/mysql.sock
  
 

【MySQL课程大纲】备战加薪季,硬核技能来助力!关注我的微信公众号【DB哥】免费学MySQL高级课程


MySQL高级课程目录如下:
第一章互联网公司MySQL安装部署
1.互联网公司安装MySQL规范
2.手把手带你安装MySQL5.7.26
3.手把手带你安装MySQL8.0.20
4.MySQL多实例的二三事


第二章MySQL启动时遇到的那些坑
1.生产中的MySQL启动及MySQL启动顺序
2.常见MySQL启动失败案例(2)
3.常见MySQL启动失败案例(1)
4.MySQL数据库用户安全策略
5.找回丢失的用户密码


第三章MySQL数据库乱码之字符集
1.MySQL字符集
2.插入中文乱码解决
3.数据库常见字符集及如何选择字符集
4.生产中如何彻底避免出现乱码


第四章MySQL用户权限管理
1.MySQL用户权限管理及注意事项
2.你必须知道的MySQL用户知识
3.MySQL用户权限案例(1)
4.MySQL用户权限案例(2)


第五章SQL编程与性能
1.SQL编程入门也精彩(1)
2.SQL编程入门也精彩(2)
3.MySQL数据类型与性能(1)
4.MySQL数据类型与性能(2)
5.MySQL约束
6.SQL编程高级之导入测试库及表结构分析
7.SQL编程高级之查询列
8.SQL编程高级之where子句
9.SQL编程高级之group by子句
10.SQL编程高级之order by子句
11.SQL编程高级之limit子句及聚合函数
12.SQL编程高级之多表查询
13.SQL编程高级之子查询
14.SQL编程高级之MySQL巡检案例


第六章MySQL索引性能优化
1.MySQL索引与二分查找法
2.剖析b+tree数据结构
3.相辅相成的聚集索引和辅助索引
4.覆盖索引与回表查询
5.创建高性能的主键索引
6.唯一索引与普通索引的性能差距
7.前缀索引带来的性能影响
8.你真的会使用联合索引吗
9.Online DDL影响数据库的性能和并发
10.pt-osc原理与应用
11.生产中索引的管理
12.SQL语句无法使用索引的情况


第七章information_schema和sys中索引应用
1.大有用处的STATISTICS
2.判断索引创建是否合理
3.检查联合索引创建是否合理
4.有了联合索引(a,b),还要创建a索引吗
5.如何查找冗余索引
6.如何查找产生额外排序的sql语句
7.如何查找产生临时表的sql语句
8.全表扫描及统计产生全表扫描的sql语句
9.统计无用的索引
10.索引统计信息管理


第八章MySQL优化器算法与执行计划
1.简单嵌套查询算法-SNLJ
2.基于索引的嵌套查询算法-INLJ
3.基于块的嵌套查询算法- BNLJ
4.Multi-Range Read算法
5.联表查询算法BKA
6.mysql三层体系结构和ICP索引条件下推
7.一条查询SQL语句是怎样运行的
8.一条更新SQL语句是怎样运行的
9.MySQL长连接与短连接的选择
10.执行计划explain详解


第九章MySQL核心之InnoDB存储引擎
1.innodb存储引擎体系结构
2.提升数据库性能-缓冲池
3.刷写脏页check point
4.重做日志-redo log
5.回滚日志-undo log
6.DML语句性能提升技术-插入缓冲
7.数据写入可靠性提升技术-两次写
8.自适应哈希索引-AHI
9.innodb预读预写技术
10.参数配置文件
11.错误日志文件
12.慢查询日志文件
13.MySQL二进制日志(1)
14.MySQL二进制日志(2)
15.表空间文件
16.InnoDB存储引擎表空间结构
17.表碎片清理
18表空间文件迁移


第十章MySQL查询优化
1.MySQL查询优化技术
2.子查询优化
3.外连接消除
4.生产中可不可以使用join联表查询
5.group by分组优化
6.order by排序优化
7.MySQL性能抖动问题
8.count(*)优化
9.磁盘性能基准测试
10MySQL基准测试


第十一章章事务
1.认识事务
2.事务控制语句
3.事务的实现方式
4.purge thread线程
5.事务统计QPS与TPS
6.事务隔离级别
7.事务组提交group commit
8.事务两阶段提交


第十二章锁优化
1.认识锁
2.innodb行锁
3.索引对行锁粒度的影响
4.FTWRL全局读锁
5.innodb表锁
6.innodb意向锁与MDL锁
7.自增锁
8.插入意向锁
9.死锁
10MySQL两阶段锁协议


第十三章章MVCC多版本并发控制
1.MVCC多版本并发控制


第十四章备份恢复
1.生产中备份恢复的方式
2.mysqldump备份实战及原理
3.mysqldump全备及binlog恢复数据
4.xtrabackup备份工具安装
5.xtrabackup备份恢复实战及原理
6.binlog备份


第十五章MySQL主从复制架构
1.认识主从复制
2.主从复制架构部署
3.主从复制原理深入讲解
4.从库状态详解
5.过滤复制
6.主从复制案例主库删除
7.主从复制中断解决方案
8.延迟复制
9.主库drop误操作利用延迟复制恢复案例
10.并行复制
11.增强半同步复制
12.主从数据一致性校验
13.gtid复制
14.主从复制架构


第十六章MySQL高可用和读写分离架构优化
1.MHA高可用架构部署
2.主库宕机故障模拟及处理
3.MHA VIP自动切换
4.MHA主从数据自动补足
5.Atlas读写分离高性能架构
6.读写分离架构应用
7.Atlas在线管理
8.读写分离避坑指南


第十七章MySQL分库分表优化
1.MyCAT分布式架构入门及双主架构
2.MyCAT架构部署
3.MyCAT安装
4.MyCAT读写分离架构
5.MyCAT高可用读写分离架构
6.schema.xml配置文件详解
7.MyCAT垂直分表
8.MyCAT水平分表-范围分片
9.MyCAT水平分表-取模分片
10.MyCAT水平分表-枚举分片
11.MyCAT全局表与ER表

关注我的微信公众号【DB哥】,快学起来吧
posted @ 2021-09-02 20:12  DB哥  阅读(475)  评论(0编辑  收藏  举报