zoukankan      html  css  js  c++  java
  • 【第二章】MySQL数据库基于Centos7.3-部署

    一、MySQL数据库的官方网址:

    一键安装参考我的另一篇博客:

    【shell 每日一练7】一键安装mysql5.7,以及密码及策略修改

    二、MySQL的安装方法:

    以下是MySQL常见的三种安装方式:

    • 二进制  rpm   Yum Repository    mysql57-community-release-el7-9.noarch.rpm
    • 二进制  预编译  Generic                        mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
    • 源码包安             Source Code                mysql-5.7.19.tar.gz

    三、Yum的方法安装MySQL:

    1、下载安装包

    2、 设置安装初始环境

    暂时先把防火墙关闭保证实验顺利:
    [root@host-131 ~]# systemctl stop firewalld 
    [root@host-131 ~]# systemctl disable firewalld.service
    临时关闭SELlinux:
    [root@host-131 ~]# setenforce 0
    永久关闭SELinux:
    [root@host-131 ~]# sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config
    查看SELinux状态:
    [root@host-131 ~]# getenforce
    Disabled

     3、卸载系统自带的数据库(Centos7自带的是maridb)

    可参考:【MySQL解惑笔记】Centos7下卸载彻底MySQL数据库

    卸载maridb:
    [root@host-131 ~]# rpm -qa | grep mariadb
    mariadb-libs-5.5.52-1.el7.x86_64
    [root@host-131 ~]# yum -y remove mari*
    [root@host-131 ~]# rm -rf /var/lib/mysql/*
    [root@host-131 ~]# rpm -qa | grep mariadb
    [root@host-131 ~]# 

    4、修改仓库

    [root@host-131 src]# yum repolist all |grep mysql      //查看所有仓库,并能够看到开启和禁用的仓库
    [root@host-131 src]# yum repolist enabled | grep "mysql.*-community.*"  //查看所有开启的仓库,发现现在开启的是MySQL 8.0的,我们需要开启MySQL5.7的仓库
    mysql-connectors-community/x86_64 MySQL Connectors Community                  51
    mysql-tools-community/x86_64      MySQL Tools Community                       63
    mysql80-community/x86_64          MySQL 8.0 Community Server                  17     //k
     开启和关闭不同仓库,官方提供了三种修改方法:
    方法一:使用此方法时候要检测一下自己平台是否支持yum-config-manager命令:
    因为系统默认没有安装这个命令,这个命令在yum-utils 包里,可以通过命令yum -y install yum-utils 安装就可以了 shell
    > sudo yum-config-manager --disable mysql80-community shell> sudo yum-config-manager --enable mysql57-community 方法二: shell> sudo dnf config-manager --disable mysql57-community shell> sudo dnf config-manager --enable mysql56-community 方法三: 我们直接修改Yum源文件: [root@host-131 ~]# cd /etc/yum.repos.d [root@host-131 yum.repos.d]# vim mysql-community.repo [mysql57-community] name=MySQL 5.7 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/ enabled=1 //修改为1表示开启 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql80-community] name=MySQL 8.0 Community Server baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/ enabled=0 //修改为0表示关闭 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [root@host-131 yum.repos.d]# yum repolist enabled | grep "mysql.*-community.*" mysql-connectors-community/x86_64 MySQL Connectors Community 51 mysql-tools-community/x86_64 MySQL Tools Community 63 mysql57-community/x86_64 MySQL 5.7 Community Server 267    //可以看到5.7存储仓库已经开启

    注意:我们应该在任何时候只启用一个发布系列的子存储库。当启用多个发布系列的子存储库时,Yum将使用最新的系列。
    通过运行以下命令并检查其输出(对于Fedora,用dnf替换yum),验证是否启用了正确的子库并禁用了它:
    [root@host
    -131 yum.repos.d]# yum repolist enabled | grep mysql mysql-connectors-community/x86_64 MySQL Connectors Community 51 mysql-tools-community/x86_64 MySQL Tools Community 63 mysql57-community/x86_64 MySQL 5.7 Community Server 267

     5、安装MySQL数据库

    [root@host-131 yum.repos.d]# yum -y install mysql-community-server
    [root@host-131 ~]# systemctl start mysqld   
    [root@host-131 ~]# systemctl enable mysqld   设置开机自启动
    [root@host-131 ~]# systemctl status mysqld  查看mysql启动状态
    
    [root@host-131 ~]# ls /var/lib/mysql    (安装后可以看到初始化的数据库)
    auto.cnf    client-cert.pem  ibdata1      ibtmp1      mysql.sock.lock     public_key.pem   sys
    ca-key.pem  client-key.pem   ib_logfile0  mysql   performance_schema  server-cert.pem
    ca.pem      ib_buffer_pool   ib_logfile1  mysql.sock  private_key.pem     server-key.pem

    6、首次登录数据库,并设置初始化密码

    [root@host-131 ~]# mysql
    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
    发现是禁止访问的
    
    在服务器的初始启动时,由于服务器的数据目录为空:服务器初始化。SSL证书和密钥文件是在数据目录中生成的。
    安装并启用了validate_password。
    一个超级用户帐户'root'@'localhost被创建。
    超级用户的密码被设置并存储在错误日志文件中。要显示它,请使用以下命令:
    
    MySQL5.5之前版本安装后可以直接登录
    MySQL5.5自动生成的密码是空的
    MySQL5.6是将密码放在root下的
    MySQL5.7是将密码放在:
    [root@host-131 ~]# grep 'temporary password' /var/log/mysqld.log
    2018-05-30T06:34:56.956716Z 1 [Note] A temporary password is generated for root@localhost: xt8S3rWXOL/C
    [root@host-131 ~]# 
    [root@host-131 ~]# mysql -uroot -p"xt8S3rWXOL/C"
    mysql: [Warning] Using a password on the command line interface can be insecure.
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 4
    Server version: 5.7.22
    修改密码:
    方法一: [root@host
    -131 ~]# mysqladmin -uroot -p"xt8S3rWXOL/C" password "Yanglt123." //密码要满足复杂性要求 [root@host-131 ~]# mysql -uroot -p"Yanglt123."

    方法二:
    [root@host-131 ~]# grep 'temporary password' /var/log/mysqld.log
    2018-05-30T06:34:56.956716Z 1 [Note] A temporary password is generated for root@localhost: xt8S3rWXOL/C
    [root@host-131 ~]# 
    [root@host-131 ~]# mysql -uroot -p"xt8S3rWXOL/C"
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

     到此数据库安装成功:

    源码安装可参考文章:【Linux运维】LNMP环境配置

      

  • 相关阅读:
    Maven安装与配置
    win10更新后程序路径盘符变成*星号解决方法
    谈谈 CSS 关键字 initial、inherit 和 unset
    用 async/await 来处理异步
    Vuex
    HTML5新特性之文件和二进制数据的操作 Blob对象
    vue中class和内联style绑定
    Petya and Staircases CF212div.2B
    CF#212 Two Semiknights Meet
    HDU1423最长上升公共子序列
  • 原文地址:https://www.cnblogs.com/yangleitao/p/9109541.html
Copyright © 2011-2022 走看看