• 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.启动数据库
    ===================================================================================================== 
     
     
  • 相关阅读:
    runas用法
    转:在 DB2 9.7 for Linux, UNIX, and Windows OLTP 环境中使用 EMC Enterprise Flash Drives 的好处
    Dlink路由器的special application 功能
    对称加密和非对称加密
    转:Windows 7加密促使犯罪几率上升
    S60V5版本的手机QQ支持截图、语音和视频功能
    各类存储设备速度比较
    DiffieHellman密钥交换协议工作过程
    转:QQ圈子:社交神器还是隐私魔鬼?
    转:你对存储性能了解多少?
  • 原文地址:https://www.cnblogs.com/dj0325/p/7990090.html
Copyright © 2020-2023  润新知