在一个school数据库里,有一个student的表。登陆到mysql后,执行如下备份命令为什么会报错啊?
sql> mysqldump --opt school >/home/school.db
报错1064: you have an error in your sql syntax.但是我怎么看,我的那句话都没错啊? 到底问题出在哪了?指点下,谢谢。

解决方案 »

  1.   

    mysqldump --opt school >/home/school.db是操作系统命令,不是mysql中的命令,你需要直接在操作系统下执行。# mysqldump -uroot -p123 --opt school >/home/school.db
      

  2.   

    -- Table structure for table `student`
    --DROP TABLE IF EXISTS `student`;
    CREATE TABLE `student` (
      `id` int(3) default NULL,
      `name` char(10) default NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;--
    -- Dumping data for table `student`
    --
    /*!40000 ALTER TABLE `student` DISABLE KEYS */;
    LOCK TABLES `student` WRITE;
    INSERT INTO `student` VALUES (1,'?§????'),(2,'\\n'),(3,'?ú???÷'),(1,'?§????'),(2,''),(3,'?ú???÷'),(1,'?§????'),(2,''),(3,'?ú???÷'),(1,'?§????'),(2,''),(3,'?ú???÷'),(1,'?§????'),(2,''),(3,'?ú???÷'),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,'5.1.7-beta'),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL),(0,NULL);
    UNLOCK TABLES;

    备份出来的东西,字符怎么变成CHARSET=latin1 了? 在图形界面下,中文正常,怎么写进linux,再读出来就出现乱码?
      

  3.   

    你自己发的贴子重来不看了?http://topic.csdn.net/u/20090626/18/bb742007-e8c3-4f8d-b803-d3e3469e4692.html