zoukankan      html  css  js  c++  java
  • 关于linux-Centos 7下mysql 5.7.9的rpm包的安装方式

    环境介绍>>>>>>>>>>>>>>>>>>

    操作系统:Centos 7.1

    mysql数据库版本:mysql5.7.9

    mysql官方网站:http://www.mysql.com

    原文地址:http://www.cnblogs.com/5201351/p/4912614.html

    ------------------------------------------

    1、安装新版mysql之前,我们需要将系统自带的mariadb-lib卸载

    [root@5201351 ~]# rpm -qa|grep mariadb
    mariadb-libs-5.5.41-2.el7_0.x86_64
    [root@5201351 ~]# rpm -e mariadb-libs-5.5.41-2.el7_0.x86_64 --nodeps

    2、到mysql的官网下载最新版mysql的rpm集合包:mysql-5.7.9-1.el7.x86_64.rpm-bundle.tar

    3、上传mysql-5.7.9-1.el7.x86_64.rpm-bundle.tar到linux服务器,并解压tar包

    4、其中最简单的安装mysql-server服务,只需要安装如下4个软件包即可,我们可以使用rpm -ivh命令进行安装

         mysql-community-common-5.7.9-1.el7.x86_64.rpm
         mysql-community-libs-5.7.9-1.el7.x86_64.rpm             --(依赖于common)
         mysql-community-client-5.7.9-1.el7.x86_64.rpm          --(依赖于libs)
         mysql-community-server-5.7.9-1.el7.x86_64.rpm         --(依赖于client、common)

    5、接下来是初始化数据库,我们使用如下几条命令均可,效果都是一样的

    [root@5201351 ~]# mysql_install_db --datadir=/var/lib/mysql   //必须指定datadir,执行后会生成~/.mysql_secret密码文件
    [root@5201351 ~]# mysqld --initialize                         //新版的推荐此方法,执行生会在/var/log/mysqld.log生成随机密码

      另外 --initialize 选项默认以“安全”模式来初始化,则会为 root 用户生成一个密码并将该密码标记为过期,登陆后你需要设置一个新的密码,而使用 --initialize-insecure 命令则不使用安全模式,则不会为 root 用户生成一个密码。

    这里演示使用的 --initialize 初始化的,会生成一个 root 账户密码,密码在log文件里,红色区域的就是自动生成的密码

      [root@linux_node_1 src]# cat /var/log/mysqld.log 

      2017-07-30T03:27:25.981997Z 0 [Warning] InnoDB: New log files created, LSN=45790
      2017-07-30T03:27:26.227221Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
      2017-07-30T03:27:26.436181Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 025a70eb-74d7-11e7-8b38-000c298f43f2.
      2017-07-30T03:27:26.445426Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
      2017-07-30T03:27:26.445987Z 1 [Note] A temporary password is generated for root@localhost: e1BqRK3.&w!g

    6、更改mysql数据库目录的所属用户及其所属组,然后启动mysql数据库

    [root@5201351 ~]# chown mysql:mysql /var/lib/mysql -R
    [root@5201351 ~]# systemctl start mysqld.service            //启动mysql数据库服务

    7、根据第5步中的密码登录到mysql,更改root用户的密码,新版的mysql在第一次登录后更改密码前是不能执行任何命令的

    #查看一次性随机密码
    cat /var/log/mysqld.log
    2017-07-30T03:27:26.445987Z 1 [Note] A temporary password is generated for root@localhost: e1BqRK3.&w!g

    #修改密码
    [root@arjenlee ~]# mysql -uroot -p'e1BqRK3.&w!g'
    mysql
    > set password=password('http://www.cnblogs.com/arjenlee/');

    8、最后我们还可以根据实际情况创建用户,及作权限分配

    mysql> create user 'root'@'192.168.100.2' identified by 'QQ5201351'; 
    mysql> GRANT ALL PRIVILEGES ON dbname.* to 'root'@'192.168.100.2';
    mysql> flush privileges

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

    最后需要特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了,

    而是将加密后的用户密码存储于authentication_string字段

    尊重别人的劳动成果 转载请务必注明出处:http://www.cnblogs.com/5201351/p/4912614.html

  • 相关阅读:
    面向对象的核心概念
    堆栈和托管堆 c#
    DIV绘制图形
    slideLeft DIV向左右滑动
    结构化分析
    函数
    HTML CSS 特殊字符表
    100以内的数是正整数 if的基本用法
    简单三个数比较大小 “?!”的用法
    简单计算器
  • 原文地址:https://www.cnblogs.com/arjenlee/p/7258502.html
Copyright © 2011-2022 走看看