Задать вопрос

Как лучше записывать ip:port серверов в один столбец базы данных mysql?

Есть скрипт, который подключается по ip к определенному серверу и парсит его онлайн.

Все знакомы с мониторингами серверов и знают, что у некоторых людей может быть несколько серверов, допустим 3. Само собой создавать over999 столбцов под каждый ip:port - нелогично, да и глупо. Поэтому я создал один столбец и решил разбирать его через explode
$ip_port = explode(":", $row["ip"]);

Вот содержимое столбца ip:
946f9123990d43709d24a7fce72c8e43.JPG

Сюда я подставляю только первый ip:port, который разобрал explode, но мне нужно вывести все два сервера и тут я загнал себя в тупик. Как вывести сразу все значения, которые разобрал explode?

$ip = $ip_port[0];
$queryport = $ip_port[1]+1;
  • Вопрос задан
  • 2330 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
evnuh
@evnuh
Поиск Гугл помог мне, впусти и ты его в свой дом
Сегодня мы будем изучать циклы - незаменимая вещь в программировании при работе с коллекциями.
for ($i = 0; $i < count($ip_port); $i = $i+2) {
  $ip = $ip_port[$i];
  $port = $ip_port[$i+1];
  echo $ip.':'.$port.PHP_EOL;
}
Ответ написан
@asdz
Можно завести таблицу людей со связью один ко многим с таблицей сервера, в людях записываешь человека чей сервер, а в сервера ip и порт в отдельных столбцах, ip можно перевести в число www.aboutmyip.com/AboutMyXApp/IP2Integer.jsp Просто потом строки особо не попарсишь в запросах.
Ответ написан
Melkij
@Melkij
PostgreSQL DBA
Как лучше записывать ip:port серверов в один столбец базы данных mysql?

Никак. В принципе никак не лучше. Никогда не пишите чего-то много в один столбец пока не сможете для конкретной задачи указать конкретные причины, почему так делать всё-таки нужно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы