分享

写回答

发帖

[提问] Godaddy主机MySQL数据库导入乱码问题

GoDaddy GoDaddy 2941 人阅读 | 2 人回复

发表于 2008-12-7 12:10:05 | 显示全部楼层 |阅读模式

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"; 这个应该不会引起乱码吧?

正在奋战中,高手指点一下最好了,先谢了!

回答|共 2 个

OnlyBlue

发表于 2008-12-7 18:58:58 | 显示全部楼层

问题解决了,在godaddy上重装网站,就没事了。内容不多,一个下午就恢复得差不多了!

txj1984

发表于 2011-1-11 17:10:51 | 显示全部楼层

你是怎么搞的
RAKSmart
您需要登录后才可以回帖 登录 | 注册

本版积分规则