Я сбросил базу данных со своего компьютера с Linux и импортировал ее на свой локальный хост, но после импорта, когда я пытаюсь выполнить запрос с сайта или phpmyadmin, я получаю эту ошибку:
(1231) Variable 'time_zone' can't be set to the value of 'NULL'
Я много читал и не нашел ни одного решения, которое бы мне помогло.
Я пытаюсь импортировать базу данных, например
sourde dump.sql
я пробовал
mysql -u root -p database < dump.sql
Я много пытался увеличить max_allowed_packet. Последний раз я установил значение 102410241024
Я пробовал
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
Но по-прежнему ничего не работает. Есть ли другой вариант, который я могу попробовать? Также я не понял, в чем именно проблема и почему появляется эта ошибка?
В начале дампа sql у меня есть следующий код:
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
В конце файла у меня
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
В таблице user у меня есть один триггер, который устанавливает эту переменную, и код начинается следующим образом:
DROP TRIGGER IF EXISTS `user_rank_upd`;
DELIMITER //
CREATE TRIGGER `user_rank_upd` AFTER UPDATE ON `user`
FOR EACH ROW BEGIN
DECLARE c_offset TEXT;
SET c_offset = TIMESTAMPDIFF(HOUR, UTC_TIMESTAMP(), CONVERT_TZ(UTC_TIMESTAMP(), 'UTC', 'Europe/Sofia'));
SET time_zone = CONCAT(IF(c_offset > 0, '+', '-'), TIME_FORMAT(MAKETIME(ABS(c_offset), 0, 0), '%H:%S'));....
Подробнее здесь: https://stackoverflow.com/questions/661 ... ue-of-null
(1231) Переменной «time_zone» не может быть присвоено значение «NULL». ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
(1231) переменная 'time_zone' не может быть установлена на значение «null»
Anonymous » » в форуме Php - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-