MySQLのアクセス許可は、接続先のアドレスとユーザーに基づいています。したがって、 [email protected]
および
PHPが存在するボックスへのターミナルアクセスがある場合は、これを使用してphpに関係することをすべて除外して直接接続してみることができます。
mysql -h 10.4.1.163 -u root -p[pass] database -e "SHOW TABLES"
-p
の間にスペースがないことに注意してください とパスワード。成功すると、database
内のテーブルのリストが表示されます 。
他のユーザーまたは別のホスト名/IPへのアクセスを許可するには、これに沿って何かを実行する必要があります(ただし、要件に基づいて、より制限されたアクセス許可を持つ別のユーザーを実際に作成する必要があります)。
GRANT ALL PRIVILEGES ON `database`.* TO 'root'@'10.4.1.163';
ここでMySQLのGRANTに関するドキュメントを確認してください-
ちなみに、少なくともmysql_real_escape_string
を使用せずに、古いデータをクエリに送り込まないでください。 ( http://php.net/manual/en/ function.mysql-real-escape-string.php
)事前にその上にあります。PDO( http://phpを調べることもできます。 net / manual / en / book.pdo.php
)これは、現在非推奨のmysql_
よりも一般的に好まれています 機能