Linux
如果不通過套接字連接,如何連接 MySQL 伺服器?
我在共享伺服器上有一個帳戶。我有越獄訪問權限,還有 PhpMyAdmin。
我想通過 SSH 執行 mysql 命令,但出現錯誤:
$ mysql -u mySqlUser -p mySqlPw 無法通過套接字 '/var/lib/mysql/mysql.sock' 連接到本地 MySQL 伺服器
我可以連接 PHP 和 phpMyAdmin,那麼**是否可以從 shell 呼叫 mysql 並通過 ip 和埠而不是套接字連接?**該文件
/var/lib/mysql/mysql.sock
不存在 - 也許這是故意的,唯一的東西/etc/my.cnf
是[mysqld] 跳過-innodb
更多資訊
我無權更改系統設置。我在 /var 中搜尋了 mysql.sock 但什麼也沒找到。但是,phpMyAdmin 可能以某種方式通過套接字連接:
真的,如果我可以通過 IP 連接那就太好了。
還嘗試了這兩種語法:
$ mysql -u mySqlUser -p mySqlPw -h localhost $ mysql -u mySqlUser -p mySqlPw -h localhost -P 3306
兩者都具有相同的結果:
ERROR 2002 (HY000): 無法通過套接字 '/var/lib/mysql/mysql.sock' 連接到本地 MySQL 伺服器 (2)
您缺少協議參數:
mysql --protocol=tcp -u mySqlUser -p mySqlPw
或者
mysql -u mySqlUser -p mySqlPw -h localhost --protocol=tcp -P 3306
兩者應該相同(localhost:3306 是預設值)
從
mysql(1)
手冊頁:· --host=host_name, -h host_name Connect to the MySQL server on the given host.