Называется pivot.
На заведомо известной ширине таблицы запросом сделать можно, но никто не будет рад _это_ потом видеть.
Переформатируйте на приложении. Можно в двумерный массив, а можно и в один проход вывести если известны минимальная-максимальная даты и множество запросить отсортированным по order by name, date
это? Никуда. Так делать не надо уже очень давно. Лет, наверное, 20 как.
В месте регистрации с паролем делаете password_hash
Для проверки корректности пароля - password_verify. Ну и password_needs_rehash тут же сразу, чтобы потом не возвращаться.
Где эти места в коде - знает тот, кто у вас делал авторизацию.
Разумеется для vps требуется кто-то, кто будет необходимое окружение настраивать. И более того, нужен кто-то, кто будет за этим следить в дальнейшем. В этом смысл VPS и заключается. Вы получаете root и настраиваете сами (или через вашего администратора) то что вам необходимо и так, как вам необходимо.
Если у вас нет потребности настроить систему - то зачем вам VPS? Ищите какой-нибудь PaaS или shared hosting. Там стоимость услуг системного администрирования включена в прайс.
Может быть просто OPcache выключен.
Может и чтение/запсь ваших файликов тормозить. Сомневаюсь что IOPS у вас гарантированные за 6 евро/мес.
Профилируйте и узнаете где время тратится.
vps администрируете вы. У вас есть некоторые лимиты ресурсов железа которыми (в зависимости от честности хостера) вы можете распоряжаться по своему усмотрению.
Дальше вопрос к вашему скрипту. Профилируйте и смотрите где тупит. Может у вас там 100500 походов в СУБД и вместо средней железки на полсотни ядер и четверть террабайта ОЗУ с настроенной базой но на большую толпу клиентов вы стали ходить в локальную базу с дефолтным конфигом.
формализуете как выглядит то что надо оставить, а как то что надо убрать. Затем делаете регулярку. Скорей всего preg_replace_callback будет попросту удобнее.