MySQL ERROR 1231 (42000): переменная 'character_set_client' не может быть установлена ​​в значение 'NULL'

У меня есть MySQL 5.0.84, работающий на сервере Slackware 13.0 Staging, и мне нужно скопировать одну таблицу на другой сервер, который был построен для использования Ubuntu 14.04 для другого тестирования. Я взял mysqldump этой таблицы и скопировал ее в testing server. Я получаю следующую ошибку при попытке восстановить файл дампа.

ERROR 1231 (42000):Variable 'character_set_client' can't be set to the value of 'NULL'

Пожалуйста, помогите мне, как исправить эту ошибку. Спасибо!

Ответ 1

Я сделал несколько поисков в Интернете и исправил его наконец.

Добавлен следующий текст в начале файла mysqldump, и восстановление было успешным.

/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */;
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */;
/*!40101 SET @[email protected]@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @[email protected]@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @[email protected]@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @[email protected]@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @[email protected]@SQL_NOTES, SQL_NOTES=0 */;

Ответ 2

Я изменил

/*!40101 SET character_set_client = @saved_cs_client */;

to

/*!40101 SET character_set_client = 'utf8' */;

в файле дампа после кода для создания таблицы.

Ответ 4

на моем пути, откройте файл .sql, в конце концов, do del:

  /*!40101 SET [email protected]_CHARACTER_SET_CLIENT */;
  /*!40101 SET [email protected]_CHARACTER_SET_RESULTS */;
  /*!40101 SET [email protected]_COLLATION_CONNECTION */;

и снова отправьте его, а затем хорошо поработайте для меня!

Ответ 5

Хорошо, благодаря всем ответам, это просто помогло мне решить мою проблему. Но копирование и вставка кодов сверху не работали для меня. Таким образом, я экспортировал sql файл, который уже был в моей базе данных, и оттуда я взял код и добавил в начало моего файла sql для импорта

-- phpMyAdmin SQL Dump
-- version 4.7.0
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Generation Time: Aug 16, 2017 at 07:24 AM
-- Server version: 10.1.25-MariaDB
-- PHP Version: 7.1.7

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */;
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */;
/*!40101 SET @[email protected]@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

Потому что этот верхний раздел отсутствовал в моем документе sql. Затем импорт был успешным. Надеюсь, это тоже поможет кому-то другому.