*mysql_connect 사용시 No such file or directory 가 발생하는 경우에 대해 정리하였습니다.
PHP Warning: mysql_connect(): No such file or directory in 경로/파일명.php on line 16
phpinfo()
phpinfo()를 확인하여 mysql.default_socket의 값을 확인한다.
mysql.default_socket => /var/lib/mysql/mysql.sock => /var/lib/mysql/mysql.sock
/var/lib/mysql/mysql.sock
mysql status 확인
쉘에서 mysql로 접속하여 status;를 입력한 후 UNIX socket의 값을 확인한다.
# mysql -u root -p
mysql> status;
--------------
mysql Ver 14.14 Distrib 5.7.32, for Linux (x86_64) using EditLine wrapper
Connection id: 4
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.7.32-log Source distribution
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /tmp/mysql.sock
Uptime: 2 min 20 sec
Threads: 2 Questions: 7 Slow queries: 0 Opens: 105 Flush tables: 1 Open tables: 98 Queries per second avg: 0.050
--------------
UNIX socket: /tmp/mysql.sock
unix socket과 php.ini의 socket값이 일치해야 연결이 되므로, 일치하지않을 경우 mysqld의 UNIX socket값으로 php.ini 파일을 수정해준다. (mysql.default_socket = UNIX socket 값)
재시작
아파치를 재시작한다.
'Development > PHP' 카테고리의 다른 글
PHP Notice: Use of undefined constant (0) | 2023.01.18 |
---|---|
Cannot re-assign auto-global variable _GET 에러 (0) | 2023.01.17 |
익명 함수(Anonymous functions) (0) | 2023.01.13 |
[PHP] 로그파일에 소스코드가 출력되는 경우 (2) | 2023.01.12 |
PHP 로그에 소스코드가 출력될 때 (0) | 2023.01.11 |