连接mysql问题

1.出现如下图所示

 

 分析原因:

1.该用户没有连接权限

解决方案:

 1.连接linux服务器,mysql -u root -p    然后输入root的密码 ,如果忘记密码 ,打开etc 下面的my.cnf 即命令是 vi /etc/my.cnf 

 2.[mysqld]后面任意一行添加“skip-grant-tables”  然后按Esc按钮 输入  :wq!  保存并退出 

 3. 重启  /etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

 4. 输入 mysql -u root -p  ,到输入密码时,直接Enter 

 5.不同版本的修改密码不同

      对于5.7以下版本:  

    mysql> use mysql;

    mysql> update user set password=password('123') where user='root' and host='localhost';

    mysql> flush privileges;

  对于5.7及以上版本:

    mysql> use mysql;

    mysql> update user set authentication_string=password('123') where user='root' and host='localhost';

    mysql> flush privileges;

    6.修改 /etc/my.cnf  去掉 skip-grant-tables  然后重启  /etc/init.d/mysql restart  或者 /etc/init.d/mysqld restart

    7.赋予连接权限  root 是 账户名称,  @'要连接mysql的ip地址'   ,by '要连接的用户密码'

       mysql> grant all privileges on *.* to 'root'@'10.26.114.216' identified by 'pre@123';

  mysql> flush privileges;

       mysql>revoke all  on jydb.* from `jy_test_jydb`@`%`;

       mysql> flush privileges; 

 原因2:查看mysql连接的端口号

      mysql> show global variables like 'port';

 

报错:Starting MySQL.The server quit without updating PID file (/[FAILED]mysql/izwz9bqg2v1h2hkjkaykklz.pid).

解决步骤:

先去找打cat /etc/my.cnf 找  my.cnf  查看 mysqld.log日志

cat /var/log/mysqld.log

看到 报如下错误:

 

   错误13说明没有权限。使用命令

    # chmod -R 777  可以解决

    chmod -R 777 /usr/local/mysql/

   chown -R mysql:mysql /usr/local/mysql/

   chmod -R 777 /mysql/data/

 

   chown -R mysql:mysql /mysql/data/

如果是 你把data 移动到其他盘(刚挂载的 /disk02)里面了 并且建设一个软连接

需要做如下操作 :ln -s  /disk02/data  /usr/local/mysql

                                      源文件        目标文件   

 

   chmod -R 777 /disk02/data
   chown -R mysql:mysql /disk02/data

 

 

posted @ 2019-12-24 11:11  繁华纤尽依然保持初心  阅读(165)  评论(0)    收藏  举报