专栏首页日暮星辰phpmyadmin与php.ini中的socket配置问题

phpmyadmin与php.ini中的socket配置问题

昨天在安装完新的perconesql数据后,发现phpmyadmin不能正常连接了。一时查来查去不知出了什么问题。

后来经过确认,由于php.ini中的mysqli.default_socket和pdo_mysql.default_socke默认为空,实际默认即为/tmp/mysql.sock,此时如果和mysql本身的设置不一致,就会导致phpmyadmin无法有效登录。

我们先查询mysql服务器使用的socket位置:

# mysql -u root -p Enter password: yourpasswd mysql> STATUS; -------------- mysql Ver 14.14 Distrib 5.7.21-21, for Linux (x86_64) using 6.2 Connection id: 2 Current database: Current user: root@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.7.21-21 Percona Server (GPL), Release 21, Revision 2a37e4e Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 UNIX socket: /var/lib/mysql/mysql.sock Uptime: 26 min 14 sec Threads: 1 Questions: 5 Slow queries: 0 Opens: 105 Flush tables: 1 Open tables: 98 Queries per second avg: 0.003 -------------- mysql> exit Bye

12345678910111213141516171819202122232425262728

# mysql -u root -pEnter password: yourpasswdmysql> STATUS;--------------mysql  Ver 14.14 Distrib 5.7.21-21, for Linux (x86_64) using  6.2 Connection id: 2Current database: Current user: root@localhostSSL: Not in useCurrent pager: stdoutUsing outfile: ''Using delimiter: ;Server version: 5.7.21-21 Percona Server (GPL), Release 21, Revision 2a37e4eProtocol version: 10Connection: Localhost via UNIX socketServer characterset: utf8Db     characterset: utf8Client characterset: utf8Conn.  characterset: utf8UNIX socket: /var/lib/mysql/mysql.sockUptime: 26 min 14 sec Threads: 1  Questions: 5  Slow queries: 0  Opens: 105  Flush tables: 1  Open tables: 98  Queries per second avg: 0.003-------------- mysql> exitBye

上面命令中查询到的socket地址为/var/lib/mysql/mysql.sock

修改php.ini文件中的两项:

vi /etc/php.ini mysqli.default_socket = /var/lib/mysql/mysql.sock pdo_mysql.default_socket = /var/lib/mysql/mysql.so

12345678

vi  /etc/php.ini  mysqli.default_socket = /var/lib/mysql/mysql.sock    pdo_mysql.default_socket = /var/lib/mysql/mysql.so

你也可以设置mysql配置文件my.cnf

vi /etc/my.cnf [client] socket = /var/lib/mysql/mysql.sock [mysqld] socket = /var/lib/mysql/mysql.sock

1234567

vi /etc/my.cnf [client]socket          = /var/lib/mysql/mysql.sock [mysqld]socket          = /var/lib/mysql/mysql.sock

至此,重启php或httpd就可以登录phpmyadmin

原创文章转载请注明

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Mysql8.0默认加密连接方式修改

    Mysql8.0默认采用了新的caching_sha2_password的身份验证方式,此方式并不兼容常规的老的web服务接口,当然,不排除后面会出现。比如ph...

    Zach
  • SSL/TLS加密检测脚本testssl.sh

    以前SSL检测常用工具就是ssllabs的:https://www.ssllabs.com/ssltest/ 以及国内的https://myssl.com/.

    Zach
  • CentOS7系统YUM安装MariaDB10.3

    Zach
  • Linux系统彻底卸载MySQL数据库

    输出结果表示,我安装的MySQL Server,Client都是5.6.44的,因为我系统支持的版本是要5.7+的版本,所以不得不卸载重装 

    追逐时光
  • MySQL关于数据字典的一个疑问

    今天看着MySQL的数据字典,突然想到一个问题:为什么MySQL数据字典 information_schema中的表名是大写,而performance_sche...

    jeanron100
  • SQLSTATE[HY000] [2002] No such file or directory

    /Applications/MAMP/tmp/mysql/mysql.sock

    lilugirl
  • linux pip install Mysql-python报错

    葫芦
  • MySQL 8.0.19 Linux平台安装 Part 2

    cat /data/mysql/data/mysql-error.log |grep password

    bsbforever
  • 超详细的MySQL5.6安装部署教程

    如果需要配置服务(如进行开机自启动等),可以进行配置,生产环境上如有多个实例等不建议如此配置

    July
  • MySQL多实例安装(相同版本)

    本文以MySQL5.7为例,介绍在同一台机器下如何安装多个MySQL实例。 环境:RHEL 6.5 + MySQL 5.7

    Alfred Zhao

扫码关注云+社区

领取腾讯云代金券