Я немного запутался в настройке моего нового сервера MySql. Это должен быть автономный сервер. Другие веб-серверы должны подключаться к нему.
Имя хоста веб-сервера "webserver", IP-адрес 192.168.1.50, и он работает
Имя хоста сервера mysql "mysql", IP-адрес 192.168.1.60, и он работает
Я предпочитаю использовать имя хоста вместо IP-адреса для подключения к серверу mysql.
В / etc / hosts (mysql server) у меня есть:
127.0.0.1 localhost
192.168.1.50 webserver
У веб-сервера нет виртуальных хостов, есть один большой каталог / var / www, который содержит несколько веб-сайтов в разработке.
Я использовал это в качестве руководства: http://library.linode.com/databases/mysql/standalone-mysql-server
На запуск службы mysql [ 1114]:
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
добавить 192.168.1.60 mysql
в /etc/hosts
всех серверов, которые должны подключаться к mysql ....
Краткий ответ: вам нужно заполнить руководство по статическим 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 - измените eth0:1
IP на ваш частный IP-адрес, указанный на странице конфигурации Linode. Также измените IP-адрес eth0
на ваш основной IP-адрес, назначенный Linode.
В качестве пользователя 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
Обратите внимание, что значения domain
и search
являются необязательными и отличаются в моем файле от того, что предлагает Линод в своих примерах. Вот как мой файл был по умолчанию, и я оставил его таким - просто нужно было удалить неточный сервер имен и добавить 2 сервера имен со страницы моего удаленного доступа к серверу Linode. Также была добавлена строка options rotate
.
Linode также рекомендует удалить DHCP, что мне не нужно. Если вы хотите, команда является apt-get remove isc-dhcp-client dhcp3-client dhcpcd