Проблема со СВЯЗУЮЩИМ ЗВЕНОМ с корневых серверов DNS - это, когда у Вас есть следующая ситуация:
example.com имеет записи DNS ns1.example.net и ns2.example.net как его серверы NS. .com полномочия, которые являются, куда сопоставитель DNS собирается искать доменное имя, НЕ МОГУТ обеспечить IP-адреса для ns1.example.net и ns2.example.net, потому что они не находятся в его полномочиях.
Способ зафиксировать это состоит в том, чтобы .com домен использовал порожденные серверы NS .com. Таким образом, example.com использовал бы ns1.example-2.com и ns2.example-2.com, и все будет прекрасно, так как .com полномочия могут обеспечить IP-адрес для сервера имен. Это сохраняет несколько распространений в прямом и обратном направлениях к корневым серверам DNS, с тех пор в Вашем случае для получения example.com, он теперь также должен спросить .NET о example.net.
В моем случае все мои домены имеют их собственные записи NS, таким образом, для example.com у меня есть a.ns.example.com и b.ns.example.com, и для моего домена example.net у меня есть a.ns.example.net и b.ns.example.net.
Это требует, чтобы больше установки и не все хосты могло бы быть готово позволить Вам делать так. Можно застрять с тем, что Вы в настоящее время имеете!
Вы могли сделать что-то как
echo "insert into squidlog (time) values (now());" | mysql -u log -ploguserpassword log_db
Я не крупный сценарист оболочки, но Вы получаете идею. Я уверен с некоторым необычным управлением, Вы могли получить всю соответствующую информацию (как IP-адрес) там также.
Какой язык Вы используете для своего сценария?
В Perl, f.e., можно определенно запросить базу данных.
При использовании Bash (или просто любые другие сценарии оболочки), Вы не можете сделать этого непосредственно; необходимо будет полагаться на инструменты командной строки, которые могут сделать задание (такое как клиентские инструменты MySql) и проанализировать их вывод.
В дополнении к вышеупомянутым ответам эта форма может быть большим количеством convienent:
mysql -h hostname -u username -p 'password' <<- _END_ | grep something
insert into....;
select * from....;
_END_
Я добавил | grep something
только показать Вам вариант передачи по каналу вывода. Это - unessacary, если Вы не должны обрабатывать вывод SQL, Вы используете. Вы могли, вероятно, перенести все это в a myvariable=$(....)
локально обработать ouput, не используя другой сценарий. Это - пример здесь документ. Обратите внимание, что это не тестируется.
Более изящная альтернатива:
Более изящный способ сделать то, что Ваше выполнение может быть должно передать данные логов по каналу к сценарию непосредственно вместо того, чтобы обработать файл журнала. Это дало бы Вам данные реального времени, и Вы не должны будете волноваться об установке задания крона для проверки файла на изменения с промежутками.
Пример этого метода:
LogFile Path/To/Log/In/Your/Configuration
кому:
LogFile |/usr/local/custom_script_you_made_to_process_the_data
Заметьте канал в начале пути. Это запишет вывод непосредственно в Ваш сценарий вместо того, чтобы поместить его в файл журнала. Лично я использовал бы этот переданный по каналу метод и затем использовал бы сценарий жемчуга, чтобы извлечь и отформатировать данные и затем Perl 'DBI:: mysql' пакет для отправки его в mysql. При тихой необходимости в других данных, Вы могли бы затем добавить их к исходному файлу журнала.
Обратите внимание, что к Вашему сценарию с этим вторым методом представляемые данные, кажется, прибывают из STDIN (стандартный вход) как кто-то ввел его, или Вы передали файл по каналу в сценарий.
Просто мой собственный скромный комментарий, если Вы хотели сделать это только в оболочке.... Когда я сначала запустил, я хотел сделать все с Bash. В то время как оболочка является довольно потрясающей, я нашел, что сжатие меня только к Bash на самом деле заставляло меня перейти через смешные обручи для выполнения некоторых задач. После того как я добавил Perl к своим сценариям и перешел назад и вперед между двумя для использования в своих интересах то, в чем каждый выделяется, я сэкономил много времени и нашел мои решения намного более изящными и чистыми. В той точке я стал преобразованным в использование лучшего инструмента для задания вместо того, чтобы пытаться использовать тот же инструмент для всех проблем, который работает невероятно хорошо с Linux, так как Shell делает феноменальное универсальное и простое в использовании связующее звено между различными сценариями на различных языках.