当主机填写为localhost时MySQL会采用 unix domain socket连接,当主机填写为127.0.0.1时MySQL会采用TCP/IP的方式连接。使用Unix socket的连接比TCP/IP的连接更加快速与安全。这是MySQL连接的特性。
当使用localhost时,有时会连接出错,这个问题有以下几种解决方法:
- 使用TCP/IP代替Unix socket。即在连接的时候将localhost换成127.0.0.1。
-
修改MySQL的配置文件my.cnf,指定mysql.socket的位置:
/var/lib/mysql/mysql.sock (你的mysql.socket路径)。
-
直接在php建立连接的时候指定my.socket的位置(官方文档:mysqli_connect)。比如:
$db = new MySQLi('localhost', 'root', 'root', 'my_db', '3306', '/var/run/mysqld/mysqld.sock')
相关推荐
如何让mysql只能用localhost,127.0.0.1连接,不能用ip连接 mysql不能用localhost,127.0.0.1连接,只能用ip连接 的解决方法
以前一直认为localhost与127.0.0.1是一回事,现在事实证明它们其中还是有区别的。 在网上搜索了一下它们的区别,有人已经说的很明白了,具体可以参看://www.jb51.net/article/50422.htm。它们的主要区别是loca
可能有很多朋友都会碰到一个问题不知道127.0.0.1与localhost有什么区别,但是有的时间会发现使用localhost连接不了,但是改成127.0.0.1即可了连接了,那么他们会有什么区别呢,下面我给大家介绍。 mysql -h ...
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解决: 1.打开在创建mysql容器时挂载的conf目录下的mysqld.cnf(如下文件) 我创建docker的姿势 2.进入mysqlId.cnf文件中在...
首先是不知道怎么忽然mysql用命令行,workbench都登录不了,都提示’Access denied for user ‘root’@’localhost’。 数据库卸载重装了几次都不行。好像感觉数据清理不干净。解决的过程遇到的坑,这里记录分享下。...
Mysql root用户对应的host字段缺少localhost导致本地无法访问数据库问题修复
localhost与127.0.0.1的区别是什么?相信有人会说是本地ip,曾有人说,用127.0.0.1比localhost好,可以减少一次解析。看来这个入门问题还有人不清楚,其实这两者是有区别的
mysql的连接问题,重启电脑登录不上mysql的问题
正常解释 %代表任何客户机都可以连接 localhost代表只可以本...这里说的两种连接方法指是执行mysql命令时,-h参数填的是localhost还是IP, 两种连接方式的区别如下 -h 参数为 localhost 当-h参数为localhost的时候,实
mysql_connect(‘localhost’,’root’,’zzzizzz1′); 使用strace获取系统调用: 复制代码 代码如下: strace php connects.php 2>&1 | grep connect #127.0.0.1 -> internet socket connect(3, {sa_family=AF_INET...
mysql库文件和头文件,可以用VC调用库函数 #include "stdafx.h" #include "mysql.h" #include #include < list > #pragma comment(lib,"libmysql.lib") using namespace std; int main() { char strSQL[256] ...
解决Mysql Error-The user specified as a definer (‘mysql.infoschema’@’localhost’) does not exist
连接MySQL数据库有两种方式:TCP/IP(一般理解的端口的那种)和Unix套接字(一般叫socket或者sock)。大部分情况下,可以用localhost代表本机127.0.0.1,但是在MySQL连接时,二者不可混用,而且MySQL中权限设置中...
Navicat premium连接mysql时出现2003-Can't connect to MySql server on 'localhost'(10061)错误
grant all privileges on *.* to ‘jirauser’@'localhost’ identified by ‘jira’with grant option; flush privileges; 2、修改 JIRA 端口 JIRA 是集成在 Tomcat 上面的,所以修改端口的方法和 Tomcat 修改...
"Host 'localhost' is not allowed to connect to this MySQL server" 的原因及解决办法
第一招、mysql服务的启动和停止 net stop mysql net start mysql 第二招、登陆mysql 语法如下: mysql -u用户名 -p用户密码 键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中...