zoukankan      html  css  js  c++  java
  • Centos7 安装MySQL 5.7

    一、下载并安装MySQL官方的 Yum Repository

    wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

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

    yum -y install mysql57-community-release-el7-10.noarch.rpm

    之后就开始安装MySQL服务器。

    yum -y install mysql-community-server

    二、MySQL数据库启动

    1、首先启动MySQL

    systemctl start  mysqld

    报错:Failed to start mysqld.service: Access denied 

    解决:systemctl daemon-reexec

    2、查看MySQL运行状态,运行状态如图

    systemctl status mysqld

     报错

    ● mysqld.service - MySQL Server
       Loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled; vendor preset: disabled)
       Active: failed (Result: exit-code) since 五 2020-05-22 19:21:15 CST; 57min ago
         Docs: man:mysqld(8)
               http://dev.mysql.com/doc/refman/en/using-systemd.html
    
    5月 22 19:21:12 localhost.localdomain systemd[1]: Starting SYSV: MySQL database server....
    5月 22 19:21:15 localhost.localdomain mysqld[15860]: MySQL Daemon failed to start.
    5月 22 19:21:15 localhost.localdomain mysqld[15860]: Starting mysqld:  [失败]
    5月 22 19:21:15 localhost.localdomain systemd[1]: mysqld.service: control process exited, code=...s=1
    5月 22 19:21:15 localhost.localdomain systemd[1]: Failed to start SYSV: MySQL database server..
    5月 22 19:21:15 localhost.localdomain systemd[1]: Unit mysqld.service entered failed state.
    5月 22 19:21:15 localhost.localdomain systemd[1]: mysqld.service failed.

    查看mysql日志vim /var/log/mysqld.log

    错误

    2020-05-22 18:28:27 10844 [Note] Plugin 'FEDERATED' is disabled.
    /usr/sbin/mysqld: Table 'mysql.plugin' doesn't exist
    2020-05-22 18:28:27 10844 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.

    解决:mysql_install_db --user=mysql --datadir=/usr/local/mysql

    启动mysql:systemctl start mysqld.service

    三、MySQL数据库设置

    1.大小写敏感、字符集设置

    vim /etc/my.cnf
    [mysqld]
    # MySQL设置大小写不敏感:默认:区分表名的大小写,不区分列名的大小写
    # 0:大小写敏感 1:大小写不敏感
    lower_case_table_names=1
    # 默认字符集
    character-set-server=utf8

     重启mysql: systemctl restart mysqld

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

      查看初始密码:grep "root@localhost" /var/log/mysqld.log

      登录数据库:mysql -uroot -p

      修改密码:ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

       其中‘new password’替换成你要设置的密码,注意:密码设置必须要大小写字母数字和特殊符号(,/';:等),不然不能配置成功

    3.如果要修改为root这样的弱密码,需要进行以下配置:

      查看密码策略

       

      修改密码策略 vim /etc/my.cnf

      添加validate_password_policy配置

      选择0(LOW),1(MEDIUM),2(STRONG)其中一种,选择2需要提供密码字典文件

    #添加validate_password_policy配置
    validate_password_policy=0
    #关闭密码策略
    validate_password = off

       重启mysql服务使配置生效

    systemctl restart mysqld

       然后就可以修改为弱密码啦

    4.启mysql的远程访问

    执行以下命令开启远程访问限制(注意:下面命令开启的IP是 192.168.0.1,如要开启所有的,用%代替IP,password:登录用户的密码,我测试的机root用户不能远程):

    grant all privileges on *.* to 'root'@'192.168.0.1' identified by 'password' with grant option;

    查看user表权限

    use mysql;

    select  User,authentication_string,Host from user;

    然后再输入下面两行命令

    flush privileges; 
    exit;

    5.为firewalld添加开放端口

      添加mysql端口3306

    firewall-cmd --zone=public --add-port=3306/tcp --permanent

      然后再重新载入

    firewall-cmd --reload

    6.修改mysql的字符编码(不修改会产生中文乱码问题)

    显示原来编码:

    show variables like '%character%';

    修改/etc/my.cnf

    [mysqld]
    character_set_server=utf8
    init_connect='SET NAMES utf8'

    重启数据库

    参考:https://www.cnblogs.com/zsh-blogs/p/11497720.html

  • 相关阅读:
    hdu 5387 Clock (模拟)
    CodeForces 300B Coach (并查集)
    hdu 3342 Legal or Not(拓扑排序)
    hdu 3853 LOOPS(概率DP)
    hdu 3076 ssworld VS DDD(概率dp)
    csu 1120 病毒(LICS 最长公共上升子序列)
    csu 1110 RMQ with Shifts (线段树单点更新)
    poj 1458 Common Subsequence(最大公共子序列)
    poj 2456 Aggressive cows (二分)
    HDU 1869 六度分离(floyd)
  • 原文地址:https://www.cnblogs.com/Adoni/p/12936634.html
Copyright © 2011-2022 走看看