zoukankan      html  css  js  c++  java
  • Centos7 yum安装mysql

    参考此文档:http://www.jb51.net/article/116032.htm

          http://www.jb51.net/article/95399.htm

    1.在官网下载mysql57-community-release-el7-11.noarch.rpm

     rpm -ivh  mysql57-community-release-el7-11.noarch.rpm

    2.MySQL has a dependency on the libaio library. 

    yum install libaio

    yum install mysql-server

    3.mysql -u root

    是没有权限 chown root:root  /var/lib/mysql

         service mysqld restart

    4.mysql -u root 

    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    mysql5.7新增的特性中主要的一方面就是极大增强了安全性,安装Mysql后默认会为root@localhost用户创建一个随机密码,这个随机密码在不同系统上需要使用不同方式查找,否则无法登录mysql并修改初始密码。

    centos7是在/var/log/mysqld.log

    cat /var/log/mysqld.log

    再次登录

    mysql -u root -p

    输入刚才找到的密码

    登录成功

    5.第一次登录后必须修改密码

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
    但依然出现问题

    是因为validate_password_policy策略问题

    默认为medium

    所以首先修改validate_password_policy参数的值:

    mysql> set global validate_password_policy=0;

    然后判断密码的标准就基于密码的长度了。这个由validate_password_length参数来决定。修改validate_password_length:

    mysql> set global validate_password_length=1;

    执行修改密码:

    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

    授权其他机器登录

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
    mysql> FLUSH PRIVILEGES

    6.远程登录 mysql -h *.*.*.* -u root -p password

    出现错误

    ERROR 2003 (HY000): Can't connect to MySQL server on '110.110.110.110' (113)

    上一过程已经设置远程权限,而且能ping通,按如下方法检测:

    (1)  ps -aux | grep mysql 检测服务是否启动

    (2)telnet hostname 3306 确认服务器TCP层通信没有问题。

      不通,可能是防火墙问题:

      systemctl stop firewalld.service关闭防火墙

      Telnet 连上

    成功

     
    1.
    ==========================================================================
    故障现象 : 无法连接 mysql 
    错误信息 :ERROR 1130: Host xx.xx.xx.xx is not allowed to connect to this MySQL server 
    原因 : mysql服务器没有赋予此客户端远程连接的权限。 
    检查 :在mysql服务器本地查询mysql库里user表对应的host是否包含客户端机器的IP(%为不限制IP允许远程连接)。 
    处理 :修改mysql库下的user表:update user set host = '%'  where user ='XXX';flush privileges;
    ====================================================================================
    2.
    =====================================================================================================
    故障现象 : 无法连接 mysql 
    错误信息 :ERROR 1045 (28000): Access denied for user 'usera'@'localhost' (using password:YES)
    原因 : 用户账号并未创建
    检查 :以管理员ROOT登录后,show grants for 'usera'@'localhost'; 或者 select user from mysql.user; 确认用户账号是否存在。
    处理 :创建用户账号。
    =====================================================================================================
     
    3.
    ===================================================================================================== 
    故障现象 : 无法连接 mysql 
    错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061) 
    原因 : mysqld 客户端与服务端端口不一致。 
    检查 :在my.ini 设置下服务端口 这种情况特别是客户都与远程服务器端口不一致 很容易出现的问题
    处理 :启动mysqld 服务 
    ===================================================================================================== 
     
    4.
    ===================================================================================================== 
    故障现象 : 无法连接 mysql windows
    错误信息 :ERROR 2003 (HY000): Can't connect to MySQL server on 'hostxxxxx' (10061) 
    原因 :  同时开启大量的tcp端口和而仅有一小部分短命端口时,当他们处于time_wait时期,mysql可能会跑错端口
    检查 :在windows 默认会开启5000个临时端口供调用,而他们的生命仅仅是120s,意思是在关闭端口的时候会有120秒的延时
    处理 :减少不不必要的tcp端口。
    修改注册表
    ===================================================================================================== 
    5.
    ===================================================================================================== 
    故障现象 : 无法连接 mysql 
    错误信息 :ERROR 2002 (HY000): Can't connect to local MySQL server server through socket '/var/lib/mysql/mysql.sock'(111) 
    原因 : mysqld的mysql.sock没在相应的位置。
    处理 :1.先查看/etc/rc.d/init.d/mysql status 看看是否启动
    2.改权限 chown -R mysql:msyql /var/lib/mysql
    3.修改/etc/my.cnf (注意:先停数据库)
    [mysqld]
    datadir=/usr/local/mysql/data
    socket=/var/lib/mysql/mysql.sock
    [mysql.server]
    user=mysql
    basedir=/usr/local/mysql
    [client]
    socker=/var/lib/mysql/mysql.sock
    4.启动数据库
    ===================================================================================================== 
     
     
  • 相关阅读:
    poj 1743 Musical Theme 后缀数组
    poj 1743 Musical Theme 后缀数组
    cf 432D Prefixes and Suffixes kmp
    cf 432D Prefixes and Suffixes kmp
    hdu Data Structure? 线段树
    关于position和anchorPoint之间的关系
    ios POST 信息
    CALayers的代码示例
    CALayers详解
    ios中得sqlite使用基础
  • 原文地址:https://www.cnblogs.com/dj0325/p/7990090.html
Copyright © 2011-2022 走看看