注释:

前段时间出现过一种情况,localhost本地登录mysql数据库提示不能连接mysql.sock,第三方工具sqlyog可以登录,具体原因如下。

mysql.sock的作用

mysql有两种连接方式:

1、TCP/IP

2、socket

mysql.sock的作用是server和client在同一台服务器,并且使用localhost进行链接的时候,就会使用socket来进行连接——仅此而

已,也就是:为主机名为localhost建立的MySQL连接,该连接过程通过一个套接字文件mysql.socket实现的。所以该文件被删后,

用localhost用户是连接不到MySQL服务器的。

必须建立一条tcp/ip连接,即使用127.0.0.1而不是localhost作为-h的参数去连接MySQL服务器,如:mysqladmin -h 127.0.0.1

-u root -p shutdown,强制地建立一条tcp/ip连接;关闭MySQL服务器,再重新以localhost为主机名启动MySQL服务器,它就会重

新创建一个套接字文件。

对上文加以测试深入了解;

查看mysql.sock具体路径:

[root@Wonhigh-Test16 ~]# ps -ef | grep mysql.sock|grep -v "grep"

mysql    31108 30650  0 Sep10 ?        00:03:17 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/Wonhigh-Test16.err --pid-file=/var/lib/mysql/Wonhigh-Test16.pid --socket=/var/lib/mysql/mysql.sock --port=3306

[root@Wonhigh-Test16 ~]#

转移套接字文件 mysql.sock

[root@Wonhigh-Test16 ~]# mv /var/lib/mysql/mysql.sock /var/lib/mysql/mysql1.sock

确认本地登录情况

[root@Wonhigh-Test16 ~]# mysql -uroot -p123456

Warning: Using a password on the command line interface can be insecure.

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

[root@Wonhigh-Test16 ~]#

尝试127.0.0.1 tcp/ip连接(第三方工具远程连接都可以‘连接属性会显示为TCP/IP ’)

[root@Wonhigh-Test16 ~]# mysql -uroot -p123456 -h127.0.0.1

Warning: Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 127

Server version: 5.6.19-log

Copyright (c) 2000, 2014, 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>

恢复本地连接

[root@Wonhigh-Test16 ~]# mv /var/lib/mysql/mysql1.sock /var/lib/mysql/mysql.sock

[root@Wonhigh-Test16 ~]# mysql -uroot -p123456

Warning: Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 121

Server version: 5.6.19-log MySQL Community Server (GPL)

Copyright (c) 2000, 2014, 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> exit

Bye

[root@Wonhigh-Test16 ~]#

mysql.sock.lock的作用_mysql.sock的作用相关推荐

  1. mysql explain是什么意思_mysql explain的作用是什么?

    mysql explain的作用是模拟Mysql优化器是如何执行SQL查询语句的,从而知道Mysql是如何处理用户的SQL语句,提高数据检索效率,降低数据库的IO成本. mysql explain的作 ...

  2. MySQL5.7报错[ERROR] Unix socket lock file is empty /tmp/mysql.sock.lock的解决方法

    MySQL5.7报错[ERROR] Unix socket lock file is empty /tmp/mysql.sock.lock的解决方法 参考文章: (1)MySQL5.7报错[ERROR ...

  3. delimiter在mysql中的作用_细细研究MySql中delimiter起到的作用_MySQL

    MySql中delimiter究竟可以起到些什么作用呢?可能不少人都有这样的疑惑,下文就为您介绍MySql中delimiter的作用,供您参考. MYSQL导出一个SQL后: DELIMITER $$ ...

  4. mysql rollback作用_mysql rollback 原理以及若干疑问

    最近在研究mysql的事务,参考了网上的一些例子写了一些,但是感觉有一点疑问,google后发现还是没找到答案,翻了下源码,还没找到核心关键点,想请大神们,帮忙指个路 1.如果在commit之前发生异 ...

  5. mysql数据库如何配置服务_MySQL服务如何实现安装及配置

    配置主从准备工作 设定mysql_2 为主端口3307,mysql为从端口为3306 在主上创建测试库: create database db1; 然后导出主的mysql库数据然后导入给db1 mys ...

  6. mysql通过参数文件启动_mysql启动的时参数文件中的[mysql]下的参数没有生效

    my.cnf下的参数如下 [mysqld] 此处省略..... [mysql] #no-auto-rehash prompt='\u@\h:\p\d mysql>' #max_allowed_p ...

  7. mysql 5.6多实例_MySQL 5.6.x多实例配置

    前提准备 个人不喜欢采用mysqlmulti方式配置多实例,还是采用多实例多进程方式配置. 1, 准备数据库实例datadir目录 # mkdir -p /usr/local/mysql/mysql3 ...

  8. mysql 5.7 初始化数据库_MySQL 5.7 新特性之初始化

    1. 把二进制安装包下载放在/opt 目录下并解压 2. 创建软连接, 并添加运行环境 ln -s /usr/local/mysql /opt/mysql-5.7.18-linux-glibc2.5- ...

  9. mysql目录下没有配置文件_MySQL没有my.cnf配置文件如何解决

    安装了mysql却没有my.cnf配置文件是个很多新手都会遇到的问题.想必很多新手都经历到过这样的情景:准备修改mysql存储空间(datadir)等情况时,按着网上的教学去做,突然发现居然没有my. ...

  10. mysql 多实例 独立配置文件_mysql 5.7 配置多实例 — 独立配置文件方式

    使用独立配置文件来实现 mysql 的单机多实例 一下教程皆以已在 /usr/local 下安装了 mysql 为说明 我们将在原 3306 实例的基础上新建 3307 和 3308 两个实例 1.创 ...

最新文章

  1. 【神回复】看 App 运营高手如何应对六大奇葩用户反馈!
  2. break后面的语句还执行吗_流程控制语句
  3. oracle数据库解决system表空间已爆满的问题
  4. python在excel中的应用-python中的excel操作
  5. python图片处理裁剪大小、旋转、镜像
  6. 关于java结构中描述正确的是_下列关于Java中类的构造方法的描述,正确的是()...
  7. 【Scala】Scala中的_ 和 _*分别代表什么
  8. finedb(内置的HSQL数据库)迁移数据到MySQL
  9. “strcmp”不能将参数从“LPWSTR”转换为“const char *”
  10. android 中tools命名空间的全解
  11. 圆桌讨论:计算机视觉如何渗透你我的生活?|CCF-GAIR 2017
  12. ARCGIS 10.2全套资源下载地址
  13. 大数据之 Hadoop 基本概念
  14. USB 转 RS-485 / 422 接口转换器
  15. c#实现任务栏气泡提醒
  16. 关于语音会议自动记录的大概设计思路
  17. oracle中不等于怎么表示,sql语句不等于怎么表示
  18. APK查壳软件(根据so名)
  19. 史记十表-卷十六-秦楚之际月表第四
  20. python无法导入模块_pycharm无法导入本地模块的解决方式

热门文章

  1. slidebox使用教程 设定焦点数量
  2. IBM SPSS Statistics常用的相关性分析方法
  3. 散列(哈希)函数的python实现。
  4. 交换机的工作原理是什么,它有什么功能与作用?
  5. 百度网盘上传文件时提示超过4G限制如何解决?
  6. 苹果官方付费升级内存_vivo用户必看!官方推出扩容服务,最高升级到128G!
  7. 公众号和订阅号的区别
  8. Qt知识点梳理 —— 实现汉字转拼音全拼简拼及首字母
  9. IDEA web.xml版本过低怎么生成新的
  10. 数字后端概念——cut metal