zoukankan      html  css  js  c++  java
  • Linux 安装mysql

    1、到mysql 的官网下载mysql 的yum包

    下载并安装MySQL官方的 Yum Repository

    wget -i -c  https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

    使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

     yum -y install mysql80-community-release-el7-3.noarch.rpm
    已加载插件:fastestmirror
    正在检查 mysql80-community-release-el7-3.noarch.rpm: mysql80-community-release-el7-3.noarch
    mysql80-community-release-el7-3.noarch.rpm 将被安装
    正在解决依赖关系
    --> 正在检查事务
    ---> 软件包 mysql80-community-release.noarch.0.el7-3 将被 安装
    --> 解决依赖关系完成
    
    依赖关系解决
    
    ==============================================================================================================================================================
     Package                                     架构                     版本                    源                                                         大小
    ==============================================================================================================================================================
    正在安装:
     mysql80-community-release                   noarch                   el7-3                   /mysql80-community-release-el7-3.noarch                    31 k
    
    事务概要
    ==============================================================================================================================================================
    安装  1 软件包
    
    总计:31 k
    安装大小:31 k
    Downloading packages:
    Running transaction check
    Running transaction test
    Transaction test succeeded
    Running transaction
      正在安装    : mysql80-community-release-el7-3.noarch                                                                                                    1/1
      验证中      : mysql80-community-release-el7-3.noarch                                                                                                    1/1
    
    已安装:
      mysql80-community-release.noarch 0:el7-3
    
    完毕!
    安装mysql 服务器
    yum -y install mysql-community-server

    这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb。

    已安装:
      mysql-community-libs.x86_64 0:8.0.20-1.el7       mysql-community-libs-compat.x86_64 0:8.0.20-1.el7       mysql-community-server.x86_64 0:8.0.20-1.el7
    
    作为依赖被安装:
      mysql-community-client.x86_64 0:8.0.20-1.el7        mysql-community-common.x86_64 0:8.0.20-1.el7        net-tools.x86_64 0:2.0-0.25.20131004git.el7
    
    作为依赖被升级:
      postfix.x86_64 2:2.10.1-9.el7
    
    替代:
      mariadb-libs.x86_64 1:5.5.64-1.el7
    
    完毕!

    2 MySQL数据库设置

      首先启动MySQL

    systemctl start  mysqld.service
    查看MySQL状态
    [root@localhost home]# systemctl start  mysqld.service
    [root@localhost home]# systemctl status mysqld.service
    ● mysqld.service - MySQL Server
       Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
       Active: active (running) since 四 2020-04-30 08:39:23 CST; 3min 28s ago
         Docs: man:mysqld(8)
               http://dev.mysql.com/doc/refman/en/using-systemd.html
      Process: 50681 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
     Main PID: 50792 (mysqld)
       Status: "Server is operational"
        Tasks: 38
       Memory: 420.6M
       CGroup: /system.slice/mysqld.service
               └─50792 /usr/sbin/mysqld
    
    4月 30 08:38:42 localhost systemd[1]: Starting MySQL Server...
    4月 30 08:39:23 localhost systemd[1]: Started MySQL Server.

     此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

    [root@localhost home]# grep "password" /var/log/mysqld.log
    2020-04-30T00:38:58.704393Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: ******
    

    如下命令进入数据库:

    [root@localhost home]# mysql -uroot -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 8
    Server version: 8.0.20
    
    Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql>

    输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

    这里有个问题,新密码设置的时候如果设置的过于简单会报错:

    ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

    原因是因为MySQL有密码设置的规范,具体是与validate_password_policy的值有关:

     

    MySQL完整的初始密码规则可以通过如下命令查看:

    mysql> SHOW VARIABLES LIKE 'validate_password%';
    +--------------------------------------+--------+
    | Variable_name | Value |
    +--------------------------------------+--------+
    | validate_password.check_user_name | ON |
    | validate_password.dictionary_file | |
    | validate_password.length | 8 |
    | validate_password.mixed_case_count | 1 |
    | validate_password.number_count | 1 |
    | validate_password.policy | MEDIUM |
    | validate_password.special_char_count | 1 |
    +--------------------------------------+--------+
    7 rows in set (0.00 sec)

    密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是:

    validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
     

    可以通过如下命令修改:

    mysql> set global validate_password.policy=0;
    mysql> set global validate_password.length=1;

    设置之后,再次查看

    mysql> SHOW VARIABLES LIKE 'validate_password%';
    +--------------------------------------+-------+
    | Variable_name                        | Value |
    +--------------------------------------+-------+
    | validate_password.check_user_name    | ON    |
    | validate_password.dictionary_file    |       |
    | validate_password.length             | 4     |
    | validate_password.mixed_case_count   | 1     |
    | validate_password.number_count       | 1     |
    | validate_password.policy             | LOW   |
    | validate_password.special_char_count | 1     |
    +--------------------------------------+-------+
    7 rows in set (0.00 sec)

    此时密码就可以设置的很简单,例如1234之类的。到此数据库的密码设置就完成了。

      但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

    yum -y remove mysql80-community-release-el7-3.noarch

    此时才算真的完成了。

    如果在密码设置那里不想改,直接将密码设置成比较复杂的密码 大写+小写+特殊字符+数字 即可

    原文转自:https://www.cnblogs.com/luohanguo/p/9045391.html

  • 相关阅读:
    Java-DatabaseConnectionPool工具类
    Java-收邮件
    Java-发邮件
    Java-ZipUtil工具类
    Java-WebServiceUtil工具类
    Java-FtpUtil工具类
    Java-Base64Fiend工具类
    Java-ConnectDB工具类
    Java-UploadHelper工具类
    Java-生成缩略图工具类
  • 原文地址:https://www.cnblogs.com/ningy1009/p/12803177.html
Copyright © 2011-2022 走看看