独立 MySql 服务器的 etc/hosts 设置

独立 MySql 服务器的 etc/hosts 设置

我对设置新的 MySql 服务器有点困惑。它必须是独立服务器。其他 Web 服务器应该连接到它。

网络服务器的主机名为“webserver”,IP 为 192.168.1.50,并且正在运行

mysql 服务器的主机名为“mysql”,IP 为 192.168.1.60,并且正常运行

我喜欢使用主机名而不是 IP 地址来连接到 mysql 服务器。

在 /etc/hosts (mysql 服务器)中我有:

127.0.0.1     localhost
192.168.1.50  webserver 

该网络服务器没有虚拟主机,有一个大目录 /var/www,其中包含几个正在开发的网站。

我以此作为指导: http://library.linode.com/databases/mysql/standalone-mysql-server

服务 mysql 启动

start: Rejected send message, 1 matched rules; type="method_call", 
sender=":1.8" (uid=1000 pid=5060 comm="start mysql ") 
interface="com.ubuntu.Upstart0_6.Job" member="Start" 
error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" 
(uid=0 pid=1 comm="/sbin/init")

日志条目

120421 16:10:31  InnoDB: Starting shutdown...
120421 16:10:36  InnoDB: Shutdown completed; log sequence number 0 44233
120421 16:10:36 [Note] /usr/sbin/mysqld: Shutdown complete

120421 16:14:04 [Note] Plugin 'FEDERATED' is disabled.
120421 16:14:04  InnoDB: Initializing buffer pool, size = 8.0M
120421 16:14:04  InnoDB: Completed initialization of buffer pool
120421 16:14:04  InnoDB: Started; log sequence number 0 44233
120421 16:14:04 [ERROR] Can't start server: Bind on TCP/IP port: Cannot assign requested address
120421 16:14:04 [ERROR] Do you already have another mysqld server running on port: 3306 ?
120421 16:14:04 [ERROR] Aborting

答案1

这是一个老问题,但我还是要回答它,因为我今天遇到了同样的问题并找到了解决方案。

简短的回答是您需要从这里完成静态 IP 指南: http://library.linode.com/networking/configuring-static-ip-interfaces

由于您看起来正在使用 Linode 和私有 IP 地址,因此我的答案将针对该环境进行定制。

我实际上使用的是 CentOS,所以还没有在 Ubuntu 上尝试过这些说明,但 CentOS 说明是准确的,所以这里是针对 Ubuntu/Debian 的

首先,/etc/network/interfaces改为

 # The loopback interface auto lo iface lo inet loopback

 # Configuration for eth0 and aliases

 # This line ensures that the interface will be brought up during boot. 
 auto eth0 eth0:0 eth0:1

 # eth0 - This is the main IP address that will be used for most outbound connections.
 # The address, netmask and gateway are all necessary. 
 iface eth0 inet static
  address 12.34.56.78
  netmask 255.255.255.0
  gateway 12.34.56.1

 # eth0:0
 # This is a second public IP address.
 iface eth0:0 inet static
  address 34.56.78.90
  netmask 255.255.255.0

 # eth0:1 - Private IPs have no gateway (they are not publicly routable)
 # so all you need to specify is the address and netmask. 
iface eth0:1 inet static
  address 192.168.133.234
  netmask 255.255.128.0

注意 - 这些地址直接来自 Linode 示例配置 - 将 IP 更改eth0:1为 Linode 配置页面提供的私有 IP 地址。同时将 IP 更改eth0为 Linode 分配的主 IP 地址。

以 root 身份在命令提示符下输入/etc/init.d/networking restart

就是这样 - 它现在应该可以按您预期的方式工作了。

上面链接的页面还提供了 Fedora/CentOS、Arch、Gentoo 和 OpenSuse 的说明。

编辑:我发现我也必须更新我的 DNS 解析器设置。

编辑/etc/resolv.conf

# Generated by NetworkManager
domain linode.com
search linode.com
nameserver <your-nameserver-here>
nameserver <your-other-nameserver-here>
options rotate

请注意,domainsearch值是可选的,在我的文件中与 Linode 在其示例中建议的值不同。这是我的文件的默认设置,我保留了这种设置 - 只需删除不准确的名称服务器并从我的 Linode 服务器远程访问页面添加 2 个名称服务器。还添加了以下行options rotate

Linode 还建议卸载 DHCP,但我觉得这没必要。如果你愿意,可以使用以下命令apt-get remove isc-dhcp-client dhcp3-client dhcpcd

答案2

添加所有应该连接到 mysql 的服务器192.168.1.60 mysql..../etc/hosts

相关内容