Переход на новый MYSQL сервер разрывает сайт, сделанный с помощью codeigniter - PullRequest
0 голосов
/ 25 апреля 2019

Я пытаюсь перенести сервер MYSQL с W2008R2 на W2016 .Я установил ту же версию MYSQL (5.1.68), экспортировал БД и восстановил ее на новом сервере.Я скопировал MY.ini, где это применимо.Я проверил подключение, и все работает.После обновления config.php новым подключением к БД при загрузке index.php я получаю следующую ошибку.

Номер ошибки: 1054

Неизвестный столбец «порядок»в 'порядке предложения'

ВЫБРАТЬ * ИЗ (breaking_news) ЗАКАЗАТЬ ПО order ASC

Имя файла: C: \ inetpub \ https \ system \ database \ DB_driver.php

Номер строки: 328

Когда я вернулся и проверил содержимое БД на MYSQL-сервере W2008, у нее также не было столбца с именем order в таблице breaking_news.Я заблудился относительно того, как изначально сайт работал с использованием запроса, который не мог вернуть результаты, и теперь задаюсь вопросом, могут ли некоторые настройки сервера MYSQL отвечать за сайт, работающий на сервере 2008, а не на сервере 2016 года.Я могу переключаться между сервером 1 БД и сервером 2, и он будет работать в 2008 году, а не в 2016 году, и, насколько я могу судить, обе БД имеют одинаковое содержание в таблице последних новостей и в остальной БД.

1 Ответ

0 голосов
/ 25 апреля 2019

order является зарезервированным ключевым словом mysql https://dev.mysql.com/doc/refman/8.0/en/keywords.html#keywords-8-0-detailed-O

Вы должны использовать backtick для столбца заказа

SELECT * FROM (breaking_news) ORDER BY `order` ASC
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...