不清楚mysqldump的结果

时间:2014-10-04 10:40:15

标签: mysql sql mysqldump

为什么这些行存在于mysqldump的输出中?

  /*!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 */;

他们已被评论并以![some number]开头。这是什么意思?

1 个答案:

答案 0 :(得分:10)

/*!40014

确保,如果MySQL版本至少为4.00.14,则仅执行以下命令。

SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT

存储MySQL的当前设置。以@@开头的变量是系统变量,以@开头的变量是用户定义的变量。

导入数据完成后,MySQL将使用相反的语句恢复原始状态,例如

/*!40101 SET @@CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;