zoukankan      html  css  js  c++  java
  • CentOS 7 安装MySQL5.7.20 及(忘记密码修改密码)

    引用 https://blog.csdn.net/z13615480737/article/details/78906598

    也可:https://www.cnblogs.com/hello-/articles/9061836.html

    CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ,但是CentOS7的yum源中默认好像是没有mysql的。

    上一篇安装的是5.6的但是我想安装5.7的  yum安装是最简单的 尝试过编译安装各种问题,最后就决定用yum。

    1.卸载  先停掉mysql进程   没有安装过的可以直接跳过

            pkill -9 mysqld

            

           rpm -qa|grep -i mysql

                 

          用命令 yum -y remove

          yum -y remove mysql-community-client-5.6.38-2.el7.x86_64

          卸载不掉的用 rpm -ev 

          依次卸载 直到没有

          

    2.下载mysql的repo源 这个安装的mysql5.7.20

       [root@localhost ~]# cd /usr/local/src/
       [root@localhost src]# wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm 

       [root@localhost src]# rpm -ivh mysql57-community-release-el7-8.noarch.rpm 

       [root@localhost src]#  yum -y install mysql-server 

    (也可以指定安装目录     yum --installroot=/usr/local/mysql --releasever=/ -y install mysql-server  )我没试,这样装环境变量配置都不用你管,装上直接启动就行。安装路径是默认的。

         

       一路 y 

    根据步骤安装就可以了,

    默认配置文件路径: 
    配置文件:/etc/my.cnf 
    日志文件:/var/log/var/log/mysqld.log 
    服务启动脚本:/usr/lib/systemd/system/mysqld.service 
    socket文件:/var/run/mysqld/mysqld.pid

      配置  my.cnf        vim /etc/my.cnf

    [sql] view plain copy
     
    1. [mysqld]  
    2. #  
    3. # Remove leading # and set to the amount of RAM for the most important data  
    4. # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.  
    5. # innodb_buffer_pool_size = 128M  
    6. #  
    7. # Remove leading # to turn on a very important data integrity option: logging  
    8. # changes to the binary log between backups.  
    9. # log_bin  
    10. #  
    11. # Remove leading # to set options mainly useful for reporting servers.  
    12. # The server defaults are faster for transactions and fast SELECTs.  
    13. # Adjust sizes as needed, experiment to find the optimal values.  
    14. # join_buffer_size = 128M  
    15. # sort_buffer_size = 2M  
    16. # read_rnd_buffer_size = 2M  
    17. datadir=/var/lib/mysql  
    18. socket=/var/lib/mysql/mysql.sock  
    19. server_id = 1  
    20. expire_logs_days = 3  
    21.   
    22. # Disabling symbolic-links is recommended to prevent assorted security risks  
    23. symbolic-links=0  
    24.   
    25. log-error=/var/log/mysqld.log  
    26. pid-file=/var/run/mysqld/mysqld.pid  

    不过安装完成后,密码为随机密码,需要重置密码。

    4.  启动mysql服务

    service mysqld restart

     重置密码

        [root@localhost ~]# grep "password" /var/log/mysqld.log    

        

        可以看到  输入 mysql -u root -p   密码 进入      第一次登陆 ,需要重置密码 要不什么也不能操作 

            

           接下来重置密码:5.7.20 为了安全密码           必须包含 数字字母符号

          踩过的坑啊,设置了好几次。还有这ip不能是% 不知道为什么  反正第一次设置成%没成功  登上去之后再改就可以改了。

           把密码改简单的方法 http://blog.csdn.net/z13615480737/article/details/78907697

          alter user 'root'@'localhost' identified by 'Root!!2018';  

         最后记得刷新权限;

         flush privileges 

        也可以 直接再添加新用户     

        CREATE USER ‘root‘@‘%‘ IDENTIFIED BY ‘您的密码‘;

        grant all on *.* to 'root001'@'%' identified by 'Root@@'  with grant option;

       增加root用户指定可以任意IP登录,如果想限制只能让指定IP登录请把%替换成IP地址

       问题:如果发现找不到密码!!!!!

       解决:只能通过忘记密码的方式修改密码!!! 在安装的过程中发现找不到密码???折腾了好长时间 通过修改密码找回之后发现、原来之前安装的数据库在了,就没有生产新的数据库!!用的还是之前的配置。

    2.看mysql启动了没?初始化数据库了没?  一般直接启动 数据库 就可以 用grep "password" /var/log/mysqld.log    看到随机密码了

    修改MySQL的登录设置:
    #vi /etc/my.cnf
    在[mysqld]的段中加上一句:skip-grant-tables 保存并且退出vi。
    重新启动mysqld

    重新启动mysqld
    #/etc/init.d/mysqld restart ( service mysqld restart )
    use mysql 
    update user set password=password("12345") where user="root";
    mysql 5.7的数据库没有了password字段 用的是authentication_string字段
    mysql> update mysql.user set authentication_string=password('root') where user='root' ;
    flush privileges;
    修改密码之后在改回来
     
    最后:忘记密码修改密码:
    #先停止mysql服务
    systemctl stop mysqld
    
    #在里面增加一行:skip-grant-tables   保存并退出(:wq)
    vi /etc/my.cnf
    
    #启动服务
    systemctl start  mysqld
    mysql -u root
    
    使用mysql中的mysql数据库: mysql> use mysql;
    修改密码:  update user set authentication_string = password("Szfore_68638") where user="root" ;
    刷新数据库: flush privileges;
    退出: quit;
    
    #先停止mysql服务
    systemctl stop mysqld
    #在里面删除最后一行:skip-grant-tables   保存并退出(:wq)
    vi /etc/my.cnf
    
    #启动服务
    systemctl start  mysqld
     
  • 相关阅读:
    常规放大电路和差分放大电路
    二级管工作原理(PN结原理)学习
    数字图像处理(MATLAB版)学习笔记(2)——第2章 灰度变换与空间滤波
    数字图像处理(MATLAB版)学习笔记(1)——第1章 绪言
    PPT制作线条动画
    MOSFET使用与H桥驱动问题
    WPF自定义控件(1)——仪表盘设计[1]
    WPF自定义控件(2)——图表设计[1]
    c# lamp表达式例子
    HashCode和equal方法的区别和联系
  • 原文地址:https://www.cnblogs.com/xiaoruilin/p/8728944.html
Copyright © 2011-2022 走看看