2019-04-03-day01-第一章-MySQL-简介及安装

2019-04-03-day01-第一章-MySQL-简介及安装

1、官方定义的MySQL-DBA工作职责

1.1 开发DBA ***

1.2 运维DBA *****

1.2.1 初级运维

安装、搭建

1.2.2 中级运维

MySQL数据库管理员:用户权限,索引管理,存储引擎,备份恢复,主从,故障处理

1.2.3 高级运维

性能优化,集群高可用

2、老男孩Linux云计算运维-MySQL运维DBA课程

2.1 MySQL简介及安装 (必会)

2.2 MySQL体系结构和基础管理(熟悉)

2.3 MySQL SQL语句(熟悉)

2.4 MySQL基础优化-索引及执行计划(必会)

2.5 MySQL 存储引擎(熟悉)

2.6 MySQL 日志管理(必会)

2.7 MysQL备份恢复(必会)

2.8 MySQL主从复制(必会)

2.9 MySQL主从复制架构演变-高可用及读写分离(熟悉)

2.10 MySQL主从复制架构演变-分布式架构(了解)

2.11 MySQL整体优化(熟悉)

2.12 NoSQL-Redis缓存技术(熟悉)

2.13 NoSQL-MongoDB分布式数据库技术(熟悉)

3、DBA 职业素养

3.1 人品

3.2 严谨

    规范操作,要有理论支撑或者实践检验

3.3 细心

    变更类的操作,多思考

3.4 心态 

    能顶住压力。

==============================

3.5 熟悉操作系统

3.6 熟悉业务(开发)

3.7 熟悉行业

3.8 喜欢数据库

4、MySQL版本企业选择

4.1 规范

GA版本:稳定的发布版本

4.2 版本类型

E:企业版,收费版本,SR,偏传统行业

C:社区版,开源版本,互联网企业的选择

4.3 企业版本选择

一般新上的环境,会选择GA6-12月版本

4.4 企业主流版本

5.6版本:5.6.34 5.6.36 5.6.38

5.7版本:5.7.20 5.7.22 5.7.24

4.5 MySQL分支

Oracle MySQL

MariaDB 

PerconaDB

RDS

4.6 软件下载

地址:

https://downloads.mysql.com/archives/community/

RPM包:

2019-04-03-day01-第一章-MySQL-简介及安装_第1张图片

二进制包:(上课使用的版本)

2019-04-03-day01-第一章-MySQL-简介及安装_第2张图片

源码包:C++的源码,需要二次开发的时候,需要做统一配置管理的时候

研究源码

2019-04-03-day01-第一章-MySQL-简介及安装_第3张图片

5. 安装和基本配置

5.0 下载和上传软件到/data

5.1 解压

```

[root@db01 data]# tar xf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz 

 [root@db01 data]# mv mysql-5.7.20-linux-glibc2.12-x86_64/ mysql

```

5.2 修改环境变量及生效

```

vim /etc/profile

export PATH=/data/mysql/bin:$PATH

[root@db01 bin]# source /etc/profile

[root@db01 bin]# mysql -V

```

5.3 清理历史软件包

```

[root@db01 bin]# rpm -qa |grep mariadb-libs

mariadb-libs-5.5.56-2.el7.x86_64

[root@db01 bin]# yum remove -y mariadb-libs

```

5.4 建用户

```

[root@db01 bin]# id mysql

id: mysql: no such user

[root@db01 bin]# useradd mysql

```

5.5 初始化数据

5.5.0 个版本初始化方式介绍

5.6 版本的初始化程序:

```

/data/mysql/scripts/mysql_install_db --user=mysql --basedir=/data/mysql --datadir=/data/mysql/data

```

5.7 版本的初始化程序:

```

/data/mysql/bin/mysqld --initialize-insecure  --user=mysql --basedir=/data/mysql --datadir=/data/mysql/data

```

5.5.1 创建数据目录

```

mkdir -p /data/mysql/data

```

5.5.2 初始化(系统)数据

```

[root@db01 data]# /data/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/data/mysql --datadir=/data/mysql/data

```

5.5.3 初始化参数介绍

--initialize-insecure: 是用无安全限制的方式进行数据初始化

--user=mysql          :设置数据的管理用户

--basedir=/data/mysql :软件的安装路径

 --datadir=/data/mysql/data :数据的存储位置

5.5.4 修改权限

```

[root@db01 mysql]# chown -R mysql.mysql /data

```

5.5.5 准备启动脚本和基础配置文件

5.5.5.1 准备sys-v启动脚本

```

[root@db01 support-files]# pwd

/data/mysql/support-files

[root@db01 support-files]# cp mysql.server /etc/init.d/mysqld

```

5.5.5.2 准备配置文件

```

vim /etc/my.cnf

[mysqld]

user=mysql

basedir=/data/mysql

datadir=/data/mysql/data

socket=/tmp/mysql.sock

server_id=6

[mysql]

socket=/tmp/mysql.sock

5.5.5.3 SYS-V启动数据库

[root@db01 support-files]#

[root@db01 support-files]# service mysqld start

Starting MySQL.Logging to '/data/mysql/data/db01.err'.

SUCCESS!

[root@db01 support-files]# service mysqld stop

Shutting down MySQL.. SUCCESS!

[root@db01 support-files]# service mysqld restart

ERROR! MySQL server PID file could not be found!

Starting MySQL. SUCCESS!

```

5.5.5.4 准备systemd管理的脚本

```

vim /etc/systemd/system/mysqld.service

[Unit]

Description=MySQL Server

Documentation=man:mysqld(8)

Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html

After=network.target

After=syslog.target

[Install]

WantedBy=multi-user.target

[Service]

User=mysql

Group=mysql

ExecStart=/data/mysql/bin/mysqld --defaults-file=/etc/my.cnf

LimitNOFILE = 5000

[root@db01 ~]# /etc/init.d/mysqld stop

Shutting down MySQL.. SUCCESS!

[root@db01 ~]# systemctl start mysqld

```

5.5.5.5 连接数据库

```

mysql 

```

5.5.5.6 设置root的初始密码

```

[root@db01 ~]# mysqladmin -uroot -p password 123

```

你可能感兴趣的:(2019-04-03-day01-第一章-MySQL-简介及安装)