• 第一章 -- MySQL简介及安装


    什么是数据库

    数据库实际上就是一个文件集合,是一个存储数据的仓库,本质就是一个文件系统,数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查操作

    数据库管理系统(DBMS)

    • RDBMS
      • 关系型数据库管理系统
      • 数据安全性要求较高的应用场景
      • Oracle/MySQL/MSSQL/PG
    • NoSQL
      • 非关系型数据库管理系统
      • 针对性能要求较高,数据安全性要求不太高的场景,一般是配合RDBMS使用的产品
      • Redis/mongo/ES
    • NewSQL
      • 分布式数据库管理系统
      • TiDB(PingCap)/Spannaer(Google)

    MySQL 软件分支

    • Oracle MySQL
    • MariaDB
    • PerconaDB
    • 云数据库(RDS MySQL-阿里/腾讯DB....)

    MySQL 企业版本选择

    主流版本 发布时间
    5.6.34 2016.10.02
    5.6.38 2017.09.13
    5.6.40 2018.02.26
    5.7.22 2018.03.04
    5.7.24 2018.10.04
    5.7.26 2019.04.13

    企业新环境的版本选择:
    GA 版本 6-12月的产品,一般为偶数版

    MySQL 二进制版本安装

    • 安装版本:MySQL 5.7.26
    • 操作系统:CentOS 7.6

    下载并上传软件

    [root@mysql ~]# mkdir -p /server/scripts
    [root@mysql ~]# cd /server/scripts/
    [root@mysql /server/scripts]# tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
    

    解压

    [root@mysql /server/scripts]# mkdir /application
    [root@mysql /server/scripts]# mv mysql-5.7.26-linux-glibc2.12-x86_64 /application/mysql
    

    处理原始环境

    [root@mysql /server/scripts]# rpm -qa |grep mariadb	
    mariadb-libs-5.5.60-1.el7_5.x86_64
    [root@mysql /server/scripts]# yum remove mariadb-libs.x86_64 -y	
    ## 卸载此软件或删除/etc/my.cnf 	否则会报错
    

    创建用户

    [root@mysql ~]# useradd -s /sbin/nologin mysql
    [root@mysql ~]# id mysql
    uid=1001(mysql) gid=1001(mysql) groups=1001(mysql)
    

    设置环境变量(添加到尾部)

    [root@mysql ~]# vim /etc/profile		
    export PATH=/application/mysql/bin:$PATH
    [root@mysql ~]# source /etc/profile
    [root@mysql ~]# mysql -V	==> 检查是否生效
    mysql  Ver 14.14 Distrib 5.7.26, for linux-glibc2.12 (x86_64) using  EditLine wrapper
    

    创建数据目录并授权

    [root@mysql ~]# mkdir /data/mysql/data -p
    [root@mysql ~]# chown -R mysql:mysql /data/
    [root@mysql ~]# chown -R mysql.mysql /application/mysql/*
    

    初始化数据(创建系统数据)

    [root@mysql ~]# yum install -y libaio-devel
    [root@mysql ~]# mysqld --initialize-insecure --user=mysql --basedir=/application/mysql --datadir=/data/mysql/data
    

    编写配置文件

    [root@mysql ~]# cat >/etc/my.cnf <<EOF
    [mysqld]
    user=mysql
    basedir=/application/mysql
    datadir=/data/mysql/data
    socket=/tmp/mysql.sock
    server_id=6
    port=3306
    [mysql]
    socket=/tmp/mysql.sock
    EOF
    

    配置systemd管理(CentOS 7)

    或者使用sysd启动方式
    cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld

    [root@mysql ~]# cat >/etc/systemd/system/mysqld.service<<EOF
    [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=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
    LimitNOFILE = 5000
    EOF
    

    启动数据库

    [root@mysql ~]# systemctl start mysqld
    [root@mysql ~]# systemctl enable mysqld
    [root@mysql ~]# netstat -lntup |grep 3306	#查看是否启动成功
    

    管理员密码设置

    [root@db01 ~]# mysqladmin -uroot -p password 123456
    Enter password: 	#==> 无密码,直接回车
    
  • 相关阅读:
    Servlet学习总结,为理解SpringMVC底层做准备
    maven笔记
    初识Hadoop
    java8笔记: sorted()之正序倒序
    git push命令
    git clone新项目后如何拉取其他分支代码到本地
    Spring事务
    线程之间的转化状态
    Centos安装RabbitMq
    .net 中的AES加密解密
  • 原文地址:https://www.cnblogs.com/lpcsf/p/11983113.html
Copyright © 2020-2023  润新知