sock专题

【docker无法启动】 can't create unix socket /var/run/docker.sock: is a directory

一次重启docker后出现的问题 Oct 18 19:18:20 worker systemd[1]: Starting Docker Application Container Engine...Oct 18 19:18:20 worker1 dockerd-current[118257]: time="2018-10-18T19:18:20.734668371+08:00" level=w

网络协议栈学习之socket, sock_common, sock, 和 sk_buff

一. 前言   一直很好奇socket是如何实现的,底层的数据结构又是如何,因此在这里对socket的数据结构进行分析。   socket是传输层使用的数据结构,用于声明、定义套接字,网络层会调用sock结构体,其中sock会用到了通用sock_common结构体。而sk_buff则是内核中使用的套接字缓冲区结构体。在我们前文提到的NAT转换中,除了修改内核已有的Netfilter源码外,还有一

MySQL下mysql.sock丢失

MySQL下mysql.sock丢失(MAC) 丢失的原因一般是因为配置文件不一致的原因,mysqld 错误启动,mysqld_safe 会清除一次mysql.sock 。解决方法是: 判断一般人解决故障时没有切换到mysql用户,造成权限有问题,无法创建mysql授权表,所以也就无法创建/tmp/mysql.sock 和hostname.pid文件。因此,总结解决方法如下(注: 使用r

MySQL笔记-对mysql.sock.lock认识(2024-06-12)

此篇博文记录到个人笔记的时间为2024-06-12。 背景 每次服务器非正常关机,或者制作的docker镜像有问题时或没手动停mysql时,运行 mysqld --user=root 时,mysql总会启动失败,查看/var/log/mysqld.log时会有如下报错信息: 2024-06-11T05:39:51.601802Z 0 [ERROR] Another process w

vsftpd使用mysql完成用户验证(解决/var/lib/mysql/mysql.sock)

下面是我对vsftpd如何使用mysql完成用户验证的学习总结,不周之处,希望各位不吝赐教。 vsftpd的用户验证机制分为虚拟用户、系统用户(本地用户)、匿名用户。因为涉及到读写磁盘,所以用户管理机制至关重要。 系统用户也叫本地用户,无非就是操作系统自己的用户,vsftp可以使用服务器上现有的用户来登录。有关的配置项大都带有local字样,意为“本地用户”。 匿名用户就是一个众人皆知账密的

mysql连接之ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2

连接mysql数据库时出现如下错误:ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2) 可能的解决办法 1)确定自己安装的mysql是mysql-server而不是mysql-client。 2)查看mysql-server是否启动(我的问题就是因为没有启动)

ACE基本APISOCKET编程TCPACE_INET_Addr类ACE_SOCK_Acceptor类ACE_SOCK_Connector类ACE_SOCK_Stream

Tcp通信过程一般为如下步骤:1. 服务器绑定端口,等待客户端连接。2. 客户端通过服务器的ip和服务器绑定的端口连接服务器。3. 服务器和客户端通过网络建立一条数据通路,通过这条数据通路进行数据交互。 常用API:1. ACE—INET_Addr 类。ACE"地址"类ACE_Addr的子类,表示TCP/IP和UDP/IP的地址。它通常包含机器的ip和端口信息,通过它可以定位到所通信的

cant connect to local MySQL server through socket /tmp/mysql.sock (2)

1.连接mysql时,遇到的问题。问题如下:   Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)   这个文件是初始化后生成到配置文件指定到的目录下的,具体内容查看 /etc/my.cnf cat /etc/my.cnf     通过查看文件是存在的,但是还是报错。根据报

使用Mac报Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ 原因:无法在设置中开启mysql 在终端输入sudo /usr/local/mysql/support-files/mysql.server start,输入密码可以重新开启Mysql sudo ln -s /Appl

mysql8.0安装报错:Can‘t connect to local MySQL server through socket ‘/data/mysql/mysql.sock‘ (2)

今天二进制安装mysql8.0,由于my.cnf配置问题导致报错: Can't connect to local MySQL server through socket '/data/mysql/mysql.sock' (2) 在网上找了很多解决方案都不行,直到看到一篇文章讲将mysqld.sock创建一个软连接命名为mysql.sock,我才意识到,应该是配置错误导致的。 这是由于[mysq

原始套接字(SOCK_RAW)概述[转载]

大多数程序员所接触到的套接字(Socket)为两类:   (1)流式套接字(SOCK_STREAM):一种面向连接的Socket,针对于面向连接的TCP服务应用;   (2)数据报式套接字(SOCK_DGRAM):一种无连接的Socket,对应于无连接的UDP服务应用。   从用户的角度来看,SOCK_STREAM、SOCK_DGRAM这两类套接字似乎的确涵盖了TCP/IP应用的全部,因为基

socket编程(一)使用SOCK_STREAM建立可靠通信

socket是我们用来进行网络编程的基本API,一般系统都提供了socket,unix以及类unix(Linux、mac)它们都提供了socket,不过不同平台还是有那点区别的,其中Windows区别最大了。本文的代码是在mac上测试通过的。 socket是一个应用层编程API,提供了tcp/ip四层模型的第三层传输层的TCP、UDP协议的数据传输方式。第二层网际层有IP协议,它本来是不可靠的协

Docker使用报错信息dial unix /var/run/docker.sock: connect: permission denied

报错信息dial unix /var/run/docker.sock: connect: permission denied master@localhost:~$ docker ps Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock:

docker 权限问题 /var/run/docker.sock

这种情况一般是没有把当前的用户组加到 /var/run/docker.sock 执行组中去 ls -l /var/run/docker.socksrw-rw---- 1 root docker 0 Aug 23 09:40 /var/run/docker.sock Then sudo gpasswd -a ${USER} dockercat /etc/group | grep ^

(2020.3.18已解决)Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker dae

docker run hello-world 运行docker run hello-world出现如下错误: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 此处给出解决方案: sudo systemctl start docker 结果出现如下错

linux1.2.13源码中,管理sock结构体的数据结构及操作函数

tcp和udp等协议在传输层都对应一个sock结构,该结构是实现协议的重要结构体,而传输层实现的就是对该结构体的管理。利用一个哈希链表根据端口号保存sock结构体。有了保存sock结构的数据结构后,还需要一系列的操作函数。代码如下。 /** See if a socket number is in use.*/// 看socket的端口是否在使用 static int sk_inuse(st

supervisorctl unix ///tmp/supervisor.sock refused connection

当前supervisor配置: [unix_http_server]file=/tmp/supervisor.sock ; (the path to the socket file)chmod=0700 ; socket file mode (default 0700);[inet_http_server] ; inet (TCP) ser

[MY-010273] [Server] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock.问题解决

博文背景 本人在Ubuntu20.04系统下使用apt安装MySQL8后直接使用mysqld命令启动会发现无法启动成功,查看日志遇到[MY-010273] [Server] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock.的报错。 日志分析 2020-09-25T01:23:33.191419Z

Navicat连接2002 - Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘解决

博文背景 报错是:2002 - Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (13 “Permission denied”) 解决办法 把navicat中的localhost修改为127.0.0.1即可,至于为什么请百度localhost和127.0.0.1区别。 把nav

mysql /tmp/mysql.sock

mysql: [Warning] Using a password on the command line interface can be insecure. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) [root@myslms62 ~]# ln -s /

怎样保护“/tmp/mysql.sock ”不被删除

怎样保护“/tmp/mysql.sock ”不被删除 如果你有这个问题,事实上任何人可以删除MySQL通讯套接字“/tmp/mysql.sock”,在Unix的大多数版本上,你能通过为其设置sticky(t)位来保护你的“/tmp”文件系统。作为root登录并且做下列事情: shell> chmod +t /tmp 这将保护你的“/tmp”文件系统

2002 - Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13 权限不够)

2002 - Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (13 “权限不够”) 本地mysql客户端 或 navicae客户端 或 python程序 连接mysql-server时报错。 本机是ubuntu 16.04系统 ,使用命令安装mysql: sudo apt-get in

连接MySQL提示:ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (

原因:/tmp/mysql.sock没有这个文件,此文件为MySQL得网络连接文件,没有这个文件就无法进行连接, 处理方法1,重新启动mysql 服务,让mysql重新生成这个文件

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

全部错误如下 可能引起这个错误的原因很多这里我列出我解决的办法: 用下面这个命令,然后换成你的mysql端口 mysql -h127.0.0.1 -P3388 -p -uroot

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

使用“mysql”、“mysqladmin”、“mysqldump”等命令管理数据库时,服务器抛出类似如下错误: 本地连接mysql通常通过一个Unix域套接字文件进行,一般是mysql.sock,如果套接字文件找不到或者被删除了,本地用户就不能连接。/tmp 文件夹属于临时文件,随时可能被删除。 第一步:查找mysql.sock文件 find / -name mysql.sock

mysql.sock无法打开的问题

今天安装了MySQL 5.5的社区里程碑版,按照顺序,我先卸载了以前的5.0版,然后依照顺序分别 安装了服务器、客户端(rpm版)。     谁知在执行mysql命令的时候,总是提示:"Can't connect to local mysql server through socket '/var/lib/mysql/mysql.sock'。     我分别在google上找了这种方法,不行