select A.address from (
SELECT address, date_endtop as date, 0 as f FROM servers WHERE top = 1
UNION
SELECT address, date_endvip as date, 1 as f from servers where vip = 1
) A
ORDER BY A.f, A.date DESC
Что выдает запрос понятно, а что дальше вы собираетесь делать с адресами. Какой смысл в дублировании адресов, если из результатов запроса не ясно адрес из vip или из top? Ну будет у вас 2 одинаковых адреса в списке и что? Может лучше вывести адрес и признак откуда он появился или количество таких адресов? Запрос в таком виде выглядит каким-то малоинформативным и не законченным.
Вообще, если вам это действительно нужно, то делайте так:
select A.address from (
SELECT address, date_endtop as date FROM servers WHERE top = 1
UNION
SELECT address, date_endvip as date from servers where vip = 1
) A
ORDER BY A.date DESC
По моему дело все таки в драйвере. Поищите англоязычные ресурсы по вашей видеокарте и вашей проблеме.
В качестве костыля, можно воспользоваться областью в правом нижнем углу экрана в Windows для сворачивания всех окон.
А что мешает зайти со стороны LAN роутера, а не WAN, И попробуйте пароль по умолчанию, если не выставлять наружу управляющие интерфейсы роутера, то пароль обычно и не меняют, хотя это и порочная практика.
Tpy6okyp: Еще можно подумать в сторону облака. Правда за большой объем, скорее всего, придется платить. Кроме того встает вопрос с безопасностью, можно упаковывать данные 7z с паролем и архив лить в облако - будет безопасно, сжато и хорошо поддается автоматизации.
Кроме того облако не отменяет внешний диск, т.к. в облаках то же всякое случается.
Тогда вижу 2 варианта:
1.собираем все uid_table_2_item по каждому uid_table_1_item в одну строку с помощью group_concat, то же самое нужно сделать с массивом, потом отбираем простым сравнение.
2.Немного модифицируем запрос из моего посат, таким образом:
- заменяем в join заменяем not in (массив uid_table_2_item), на
uid_table_2_item=<первое значение из массива uid_table_2_item>
- нужно в запрос добавить столько аналогичных join конструкций, сколько значений в массиве (в каждом следующем join нужно сравнивать со следующим элементом массива).
- во фразе where отобрать
t3n.uid_table_2_item is not null
для каждого из добавленных join
Второй вариант прокатит, если в массиве ограниченное и достаточно не большое количество значений, запрос по второму варианту, нужно формировать динамически.
В первом варианте, можно попробовать group_concat заменить на что-нибудь, работающее с числами. Смысл в том, чтобы несколько значений представить в виде одного. Конкатенация не самый хороший вариант. Подошло бы хэширование, но не уверен что есть такая возможность.
В составе PuTTY есть утилита, plink, если не ошибаюсь, - она позволяет выполнять команды на удаленной машине. На Убунте создаете нужные сценарии, даете пользователю доступ к ним, потом plinkом их исполняете.
То что вам нужно, имхо.
На самом деле для полноты картины не хватает описание способа подключения WAN роутера, LAN FreeBSD и компов в LAN к сети. Я исходил из предположения, что все это хозяйство втыкается в один или несколько коммутаторов и находятся в одном широковещательном домене.
Почему работало раньше трудно сказать, не зная деталей прошлой конфигурации.
в join такое условие
convert(integer, address / 100) = home
Это в синтаксисе MS SQL, convert - преобразовывает результат деления в целое. Запишите то же самое для MySQL.
Но это костыльный вариант, т.к. если номер квартиры будет из 1 или 3 цифр, то он не работает.
По уму надо делить номер домов и квартир. От подобных объединений всегда больше гемору, чем профита, хотя часто в начале это и не заметно.
SyavaSyava: Действительно, про все компы речи не было. Юрий Ерусалимский: В общем случае, если доступ нужен к 1-2-3 компам или сервисам, то проброс портов на NAT самое простое решение. Если же нужно больше (например хотите админить сетку удаленно или нужно организовать доступ пользователей ко всем ресурсам внутри сети) - ВПН.
Похоже, что ВПН клиент получает адрес от DHCP сервера, который раздает адреса и в локалке. Поэтому у клиента, возможно, перезаписывается таблица маршрутизации не зависимо от наличия галки. Надо проверить.
Я смотрю, что у вас в ВПН и в локалке за сервером используются одни и те же адреса. Возможно проблема в этом. Если это возможно выделите для ВПН отдельную подсеть.
1.Снимаем галку.
2.На клиенте прописываем маршрут к сети за ВПН сервером (в команде route add надо указывать не фактический адрес ВПН сервера , а виртуальный ВПН адрес сервера).
vakym: Тут ключевое слово - маршрутизация. Если каждый отдельно взятый компьютер знает правильный маршрут до цели, то он будет иметь доступ.
Вы же в своем вопросе никакой конкретики не приводите (сетевые настройки клиента, сервера, типовые для компов в сети за сервером).
SELECT address, date_endtop as date, 0 as f FROM servers WHERE top = 1
UNION
SELECT address, date_endvip as date, 1 as f from servers where vip = 1
) A
ORDER BY A.f, A.date DESC