MySQL 基础入门_01安装部署

1. 产品介绍

  • 1.1什么是数据?
    人类认为的数据: 抽象出来的,图片,视频,文字,表格,数字.
    计算机: 2进制,16机制.
  • 1.2 DBMS 数据库管理系统
    RDBMS: 关系型数据库管理系统
    特点: 二维表结构,提供很丰富的查询功能.高一致性.性能相比较差.
    NoSQL: 特点: 无结构化存储数据,性能较高
    NewSQL: PinCAP TiDB Aliyun PolarDB + OB Tencent TDSQL
  • 1.3 面试题
    (1) 笔试: 介绍你了解过的数据库产品?
    RDBMS: MySQL , Oracle ,MSSQL,PG
    NOSQL: Redis, Memcached, MongoDB,ES
    NewSQL: TiDB , PolarDB ,TDSQL
    (2) 面试: 你们公司都用了哪些数据库产品?
    运维: MySQL 或者 RDS
    DBA: MySQL , Redis ,MongoDB, ES,Oracle

2. 版本选择

  • 2.1 Oracle MySQL产品线
    E : 企业版 , 收费的.
    C : 社区版 , 开源的.
  • 2.2 社区版 版本类型
    DMR,RC : 测试开发版.
    GA : 稳定发布版.
  • 2.3 企业版本选择
    5.5 : 市面使用占比7-8%
    5.6 : 50% : 5.6.3x : 5.6.34 -5.6.42 尽量选择双数版
    5.7 : 40% : 5.7.2x : 5.7.20 -5.7.26
    8.0 : 2-3% : 8.0.11+, 8.0.17以上更好.
    5.6.38 5.7.20 2017-9-13
  • 2.4 MySQL软件获取
    https://downloads.mysql.com/archives/community/
    一般,选择6-12之间的.
    预言: 8.0 ,至少未来10年,都是主流版本. — oldguo
    MGR / InnoDB cluster
  • 2.5 同源产品
    Oracle MySQL : 5.0 5.1 5.5 5.6 5.7 8.0 9.0
    MariaDB : 5.0 5.1 5.5 10.x …
    Percona : 5.0 5.1 5.5 5.6 5.7 8.0

3. 安装部署

MySQL 8.0.16 版本二进制版本部署

  • 3.1 系统的准备
(1) 网络配置 ip,hostname,iptables,Selinux

(2) 规划目录 上传软件至:/usr/local
[root@db01 local]# tar xf mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz  
[root@db01 local]# ln -s mysql-8.0.16-linux-glibc2.12-x86_64 mysql8  
#数据路径  
[root@db01 ~]# mkdir -p /data/mysql/data_3306
#binlog日志路径(日志章节说明)
[root@db01 ~]# mkdir -p /data/mysql/binlog_3306

(3) 用户创建
[root@db01 ~]# useradd mysql

(4) 授权
[root@db01 local]# chown -R mysql.mysql /usr/local/mysql8 /data

(5) 环境变量
vim /etc/profile  
#添加:  export PATH=/usr/local/mysql8/bin:$PATH  
[root@db01 local]# source /etc/profile

(6)残留处理
[root@db01 bin]# rpm -qa |grep mariadb  mariadb-libs-5.5.60-1.el7_5.x86_64  
[root@db01 bin]# yum remove mariadb-libs -y

(7) 依赖包安装
[root@db01 bin]# rpm -qa |grep libaio-devel  
[root@db01 bin]# yum install -y libaio-devel
  • 7.2 数据初始化 (建系统库)
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql8 --datadir=/data/mysql/data_3306
  • 7.3 配置文件准备
cat > /etc/my.cnf <<EOF
[mysqld]
user=mysql
port=3306
basedir=/usr/local/mysql8
datadir=/data/mysql/data_3306
server_id=6
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
EOF
  • 7.4 准备启动脚本
[root@db01 support-files]# cd /usr/local/mysql8/support-files  
[root@db01 support-files]# cp mysql.server /etc/init.d/mysqld  
[root@db01 ~]# chkconfig --add mysqld  
[root@db01 ~]# systemctl start mysqld  
[root@db01 ~]# systemctl restart mysqld
  • 清空8.0环境,部署MySQL5.7
[root@db01 local]# pkill mysqld 
[root@db01 local]# rm -rf /data/mysql/data_3306/* 
[root@db01 local]# chkconfig --del  mysqld
[root@db01 local]# tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 
[root@db01 local]# ln -s mysql-5.7.26-linux-glibc2.12-x86_64 mysql57
[root@db01 local]# vim /etc/my.cnf
[mysqld]
user=mysql
port=3306
basedir=/usr/local/mysql57
datadir=/data/mysql/data_3306
server_id=6
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock

[root@db01 local]# vim /etc/profile 
export PATH=/usr/local/mysql57/bin:$PATH
[root@db01 local]# source /etc/profile
[root@db01 local]# chown -R mysql.mysql /usr/local/mysql57
[root@db01 local]# chown -R mysql.mysql /data

#初始化
mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql57 --datadir=/data/mysql/data_3306

[root@db01 local]# cd /usr/local/mysql57/support-files/
[root@db01 support-files]# ll
total 24
-rw-r--r-- 1 7161 31415   773 Apr 13  2019 magic
-rwxr-xr-x 1 7161 31415  1061 Apr 13  2019 mysqld_multi.server
-rwxr-xr-x 1 7161 31415   894 Apr 13  2019 mysql-log-rotate
-rwxr-xr-x 1 7161 31415 10576 Apr 13  2019 mysql.server
[root@db01 support-files]# cp mysql.server /etc/init.d/mysqld 
cp: overwrite ‘/etc/init.d/mysqld’? y
[root@db01 support-files]# chkconfig --add mysqld                  
[root@db01 support-files]# systemctl start mysqld

你可能感兴趣的:(MySQL,mysql,数据库)