`

Mysql localhost 和127的区别

 
阅读更多

当主机填写为localhost时MySQL会采用 unix domain socket连接,当主机填写为127.0.0.1时MySQL会采用TCP/IP的方式连接。使用Unix socket的连接比TCP/IP的连接更加快速与安全。这是MySQL连接的特性。

 

当使用localhost时,有时会连接出错,这个问题有以下几种解决方法:

  1. 使用TCP/IP代替Unix socket。即在连接的时候将localhost换成127.0.0.1。
  2. 修改MySQL的配置文件my.cnf,指定mysql.socket的位置:

    /var/lib/mysql/mysql.sock (你的mysql.socket路径)。

  3. 直接在php建立连接的时候指定my.socket的位置(官方文档:mysqli_connect)。比如:

    $db = new MySQLi('localhost', 'root', 'root', 'my_db', '3306', '/var/run/mysqld/mysqld.sock')

分享到:
评论

相关推荐

    Mac os 解决无法使用localhost连接mysql问题

    在Mac OS系统中,当你遇到无法使用`localhost`连接到MySQL数据库的问题时,这通常涉及到网络连接机制和系统配置的差异。在这个问题中,我们发现`localhost`与`127.0.0.1`在连接MySQL时表现不同,这是因为它们采用的...

    mysql不能用localhost,127.0.0.1连接,只能用ip连接 的解决方法

    在MySQL数据库系统中,连接方式通常分为通过主机名(如localhost)和IP地址(如127.0.0.1)两种。当你遇到“mysql不能用localhost,127.0.0.1连接,只能用ip连接”的问题时,这可能是由于MySQL配置文件中的设置或用户...

    Mysql root用户对应的host字段缺少localhost导致本地无法访问数据库问题修复

    Mysql root用户对应的host字段缺少localhost导致本地无法访问数据库问题修复 Mysql 是一个关系数据库管理系统,广泛应用于各种 web 应用程序中。但是,在使用 Mysql 时,很容易遇到一些问题,例如 Mysql root 用户...

    MysqL cannot Connect to Mysql server on 'localhost'

    2. **查找MySQL服务**:在服务列表中找到名为“MySQL”或类似名称的服务(具体取决于你的MySQL版本和安装配置)。 3. **检查服务状态**:确保服务的状态为“正在运行”。如果不是,右键点击服务,选择“启动”或...

    连腾讯云上的docker上的mysql报错ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password:

    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解决: 1.打开在创建mysql容器时挂载的conf目录下的mysqld.cnf(如下文件) 我创建docker的姿势 2.进入mysqlId.cnf文件中在...

    解决mysql登录错误:’Access denied for user ‘root’@’localhost’

    首先是不知道怎么忽然mysql用命令行,workbench都登录不了,都提示’Access denied for user ‘root’@’localhost’。 数据库卸载重装了几次都不行。好像感觉数据清理不干净。解决的过程遇到的坑,这里记录分享下。...

    mysql安装教程 系统环境Centos7. 适用于mysql5和mysql8版本,区别在文中有说明 亲测可用

    本文将详细介绍MySQL安装教程,适用于CentOS 7系统环境,涵盖MySQL 5和MySQL 8版本的安装步骤,并对两者之间的区别进行了说明。 一、MySQL安装前的准备 在开始安装MySQL之前,需要确认系统环境为CentOS 7,并选择...

    MySQL数据库主机127.0.0.1与localhost区别

    MySQL数据库在配置和使用过程中,有时会遇到主机名设置为`127.0.0.1`或`localhost`的区别。这两个概念虽然都代表本地主机,但在连接MySQL数据库时,它们之间存在微妙的差异。 首先,`127.0.0.1`是一个特殊的IP地址...

    mysql_connect localhost和127.0.0.1的区别(网络层阐述)

    总结起来,`localhost` 和 `127.0.0.1` 在MySQL连接中的主要区别在于它们使用的通信机制,`localhost` 通过Unix域套接字实现高效本地通信,而 `127.0.0.1` 则使用TCP/IP协议栈,适合远程访问场景或跨网络通信。...

    php mysql localhost,127.0.0.1和ip区别

    localhost与127.0.0.1的区别是什么?相信有人会说是本地ip,曾有人说,用127.0.0.1比localhost好,可以减少一次解析。看来这个入门问题还有人不清楚,其实这两者是有区别的

    MySQL新建用户中的%到底包不包括localhost?

    正常解释 %代表任何客户机都可以连接 localhost代表只可以本...这里说的两种连接方法指是执行mysql命令时,-h参数填的是localhost还是IP, 两种连接方式的区别如下 -h 参数为 localhost 当-h参数为localhost的时候,实

    mysql5.7.20镜像安装包

    mysql5.7.20镜像安装包,该镜像为mysql数据库镜像,安装后可直接使用。 mysql5.7.20镜像安装包,该镜像为mysql数据库镜像,安装后可直接使用。 安装完成后,我们可以使用以下命令来...mysql -h localhost -u root -p

    "Host 'localhost' is not allowed to connect to this MySQL server" 的原因及解决办法

    解决"Host 'localhost' is not allowed to connect to this MySQL server"问题的方法是通过修改my.ini文件和更新用户密码来实现。这种方法简单有效,能够快速解决问题。但是,需要注意MySQL的安全机制,确保MySQL...

    完美解决MySQL通过localhost无法连接数据库的问题

    连接MySQL数据库有两种方式:TCP/IP(一般理解的端口的那种)和Unix套接字(一般叫socket或者sock)。大部分情况下,可以用localhost代表本机127.0.0.1,但是在MySQL连接时,二者不可混用,而且MySQL中权限设置中...

    mysql驱动(适用于mysql5.7版本)

    本压缩包包含了两个适用于MySQL 5.7版本的驱动文件:`mysql-connector-java-5.1.25.jar` 和 `mysql-connector-java-5.1.7-bin.jar`。 `mysql-connector-java` 是MySQL官方提供的Java驱动程序,它实现了JDBC接口,...

    C#连接MySQL需要的MySql.Data.dll,MySql.Web.dll

    在C#编程环境中,连接MySQL数据库通常依赖于特定的数据提供者,这就是MySql.Data.dll和MySql.Web.dll的角色。这两个动态链接库(DLL)文件是MySQL官方提供的.NET数据访问组件,使得C#开发者能够轻松地与MySQL服务器...

    Mysql5.6、Mysql5.7 JDBC驱动

    String url = "jdbc:mysql://localhost:3306/mydatabase"; String user = "root"; String password = "mypassword"; Connection conn = DriverManager.getConnection(url, user, password); ``` 3. **创建...

    mysql连接错误解决

    在安装MySQL之后,可能会遇到无法连接的问题,其中一种常见的错误提示是“Error 1045 Access denied for user 'root'@'localhost' (using password: YES)”。这个问题通常出现在尝试使用root用户登录MySQL服务器时...

Global site tag (gtag.js) - Google Analytics