我需要插入来自不同站点的单个MySQL DB(主域)记录
每个域都有自己的PHP文件,用于组装记录,并应运行INSERT查询,使用凭据访问主数据库。
PHP的相关起始代码是:
$host = 'localhost';
$username = 'myuser';
$password = 'mypass';
$db_name = 'main_db';
// Create connection
$conn = new mysqli($host, $username, $password,$db_name);
我对'localhost'定义感到困惑;实际上它应该指向一个远程主机(使用哪种语法?),或不?
可能这个问题很愚蠢,但在篡改文件和数据库之前,我会感激任何指示,谢谢。
答案 0 :(得分:1)
$host = 'myhost.mydomain.org'; // using hostname
$host = '12.123.123.12' ; // like this using IP
对于远程主机使用主机名或IP地址
GRANT ALL PRIVILEGES ON *.* TO USER-NAME@IP IDENTIFIED BY "PASSWORD";
最重要的事情如下(在您的远程计算机上):
防火墙以启用端口上的连接(默认3306或任何其他)
权限 - 您必须在MySQL中拥有一个允许从%(主机/ IP)连接的用户,对于所有数据库都将如下所示
bind-address
bind-address=YOUR-SERVER-IP
,MySQL的大多数默认安装只收听本地计算机({{1}})
然后重启你的mysql服务器
很好blog可以帮助您清楚地理解。