[提问]
Godaddy主机MySQL数据库导入乱码问题
|
|
1. 我从自己机器上备份了MySQL数据库,导出文件mybase.sql,文件格式为utf-8,用EditPlus打开,里面的中文显示正常。我的MySQL数据库配置/设置是这样的:
ENGINE InnoDB
COLLATE utf8_unicode_ci
Server 5.0.45-community-nt
phpMyAdmin 2.10.3
CHARSET UTF-8 Unicode (utf8)
Language Chinese simplified
2. 然后我上传到Godaddy主机的/_db_backups目录。(我又把上传后的文件mybase.sql下载,与原文件比较,证实文件上传过程中没有错误)
3. 在Godaddy建了一个空的数据库,数据库配置/设置是这样的:
ENGINE InnoDB
COLLATE utf8_unicode_ci
Server 5.0.67-log
phpMyAdmin 未知
CHARSET UTF-8 Unicode (utf8)
Language Chinese simplified
4. 用Godaddy提供的数据库管理功能Restore来恢复数据库,结果显示成功。
5. 用Firefox和IE浏览,发现凡是与数据库相关的内容全是乱码。像这样:å¾…äººçƒæƒ…诚æ³ï¼ŒåšæŒæ£ç›
6. 用Godaddy提供的phpMyAdmin界面登录数据库观察,发现数据库中的中文内容变成了乱码。(在自己机器上用phpMyAdmin查看时是正常的)
7. 这样是不是可以断定是数据导入过程中出现了问题[b]?
8. 用Godaddy提供的Backup功能进行备份,产生*.sql文件,然后下载,用EditPlus查看,发现里面的中文是乱码,并且格式上有了变化。
这是我从自己机器上备份的数据库文件*.sql文件:
-- phpMyAdmin SQL Dump
-- version 2.10.3
-- http://www.phpmyadmin.net
--
-- 主机: localhost
-- 生成日期: 2008 年 12 月 05 日 10:39
-- 服务器版本: 5.0.45
-- PHP 版本: 5.2.3
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- 数据库: `dadou`
--
-- --------------------------------------------------------
--
-- 表的结构 `dadou_items`
--
DROP TABLE IF EXISTS `dadou_items`;
CREATE TABLE IF NOT EXISTS `dadou_items` (
`collaboration_id` int(11) NOT NULL default '0',
`id` int(11) NOT NULL auto_increment,
`workflow_process_id` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;
--
-- 导出表中的数据 `dadou_items`
--
这是我从Godaddy备份的数据库文件*.sql
-- MySQL dump 10.10
--
-- Host: h5mysql5.secureserver.net Database: dadou
-- ------------------------------------------------------
-- Server version 5.0.67-log
/*!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 */;
--
-- Table structure for table `dadou_items`
--
DROP TABLE IF EXISTS `dadou_items`;
CREATE TABLE `dadou_items` (
`collaboration_id` int(11) NOT NULL default '0',
`id` int(11) NOT NULL auto_increment,
`workflow_process_id` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
我注意到三个问题:
a:/*!40101 SET NAMES utf8 */;会不会引起乱码,我不清楚它的具体含义;
b: AUTO_INCREMENT=1. 从我的机器上备份下来有,为什么导入到Godaddy,再备份下来时就没有了呢?
c: SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; 这个应该不会引起乱码吧?
正在奋战中,高手指点一下最好了,先谢了! |
|
|
|
|
|
|
|
|
|
|
OnlyBlue
发表于 2008-12-7 18:58:58
|
显示全部楼层
|
问题解决了,在godaddy上重装网站,就没事了。内容不多,一个下午就恢复得差不多了! |
|
|
|
|
|
|
|
|
|
|
txj1984
发表于 2011-1-11 17:10:51
|
显示全部楼层
|
|
|
|
|
|
|
|