Answers:
允许远程计算机上的mythfrontend访问第二台计算机上运行的mythbackend。
如果mythfrontend与mythbackend不在同一台计算机上运行,则需要一些其他配置才能允许远程访问mythbackend。
与mythbackend主机上的MYSQL相关的两个独立问题可能正在起作用:
首先,确保在mythbackend主机上的my.cnf文件'/etc/mysql/my.cnf'中启用了联网。在此文件中,默认情况下存在以下任一内容(取决于版本),这将阻止远程mythfrontend访问mythbackend主机上的数据库信息。
skip-networking
要么
bind-address localhost
要么
bind-address 127.0.0.1
现在,默认设置是只在本地主机上侦听,而不是跳过网络,而本地主机更兼容且安全性也不低。
因此,建议的解决方案是将“绑定地址”更改为计算机的LAN IP地址-尽管仅在IP地址是静态且未动态分配的情况下才可以使用。
注意
如果使用bind-address,则只能将其配置为使用1个IP地址。
#skip-networking
要么
#bind-address localhost
要么
#bind-address 127.0.0.1
要么
bind-address 192.168.3.4
注意
最后一个例子中没有'#'
其次,可能有必要更改MythTV数据库的特权表,以允许前端访问mythbackend(注意:mythfrontend通过登录mysql数据库与mythbackend进行通信-通常以用户mythtv的身份进行。)在某些系统上默认情况下,mysql不允许其他计算机上的用户登录。以下命令授予ID为mythtv的用户从任何计算机访问mythtv数据库的权限)。
这可以通过在mythbackend机器上的命令行执行以下命令来完成(这要感谢挪威的Torfinn Ingolfsen)。
注意事项:
下面命令中的“ passwd”应该是MythTV的配置中列出的密码,该密码也可以在〜/ .mythtv / mysql.txt中找到
默认情况下,mysql数据库的root用户没有密码,因此也应通过保护默认的mysql帐户来更改此密码,请参阅:http : //dev.mysql.com/doc/refman/5.1/en/default-privileges。 html
mysql -u root -p mysql
mysql> grant all on mythconverg.* to 'mythtv'@'%' identified by 'passwd';
mysql> flush privileges;
mysql> exit;
您可能还必须在防火墙中打开端口3306 / tcp。