mysql 3.23升级到mysql5及升级后搞定乱码

转载 2007年10月16日 01:20:00
原贴:http://www.fingerling.cn/read.php?27

30

mysql 3.23升级到mysql5及升级后搞定乱码

发表时间 14:24   阅读次数 593   评论数 0   日志类别 IT教程 » 数 据 库
| |
  这两天升级服务器的数据库,网上都说升级mysql要从3升到5,要先升到4再升到5。fear2个G的数据库,想把我弄晕啊。早听说升这个不好整,先在虚拟机上装了个mysql5,然后本地开始导入试试。
我晕,全是乱码。anger
  在网上一通搜索,终于找着一篇解决办法,不容易啊!
导出数据(这时候mysql4一定是正常运行着,呵呵(废话))
如果mysqldump 版本是4
mysqldump -u xxx -p xxx DBNAME > DBNAME.sql            
如果mysqldump 版本是5
mysqldump -u xxx -p xxx –default-character-set=latin1 DBNAME > DBNAME.sql  
导入数据 确保mysql -V 的是5
运行
gbk 的这样 mysql -u xxx -p xxx -e “CREATE DATABASE `数据库名` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci”
utf8的mysql -u xxx -p xxx -e “CREATE DATABASE `数据库名`  DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
mysql -u xxx -p xxx --default-character-set=编码 DBNAME < DBNAME.sql  
上面的编码有可能是 gbk 或者是 utf8

  照上面的方法测试成功,不过在实际导入的时候还是出了不少问题,头晕脑胀中,竟然不小心把一个400M数据库删除了,-_-!,还好事前备份了下。
  经过一番苦战,最终升级成功。
总结一下:
   1.用mysqldump导出的建表语句,在字段两边没有phpmyadmin那样加上``符号,如果字段名正好与mysql5的保留字一样,就会出 错。好几个数据库里面装了ourplus统计程序,里面的字段return就是mysql5的关键字。建议用phpmyadmin先导出表结构,再在 mysql5的phpmyadmin里面建表。然后在用mysqldump导出数据的时候加上-t参数只导出数据。
  2.对于大的数据库,在导 入数据时也有可能会出错,因为里面的数据可能带有不规则字符,比如/n,几百兆的数据库文件是不可能打开编辑的,只好牺牲一点啦。在导入数据的时候加上- f参数强制导入,会丢失一点数据,不过整体影响不大,像我导的论坛贴子几万条丢了一百多条吧。
  3.用上面的办法一般不用修改文件也不会出现乱码,对于UTF8格式的数据库,必须进行修改。
在用mysql_connect或mysql_pconnect连接数据库后,加上:mysql_query("SET NAMES 'UTF8'");语句,如下:
if (mysql_get_server_info()>4.1)
   mysql_query("SET NAMES 'UTF8'");
if (mysql_get_server_info()> '5.0')
   mysql_query("SET sql_mode=''");
Tags: mysql
 

WDCP快速升级PHP5.4、MySql5.5版本环境

我们WDCP PHP版本可以升级到5.3、5.6、5.5等版本,最近发现一些网友需要5.4版本。修改之前的一键包升级环境脚本,然后重新做一个PHP5.4的安装脚本。 第一、升级环境之前的准备工作 ...
  • luo200618
  • luo200618
  • 2016年08月03日 16:50
  • 1396

使用mysql_upgrade升级mysql5.1至5.6的数据库升级实施方案

本方案是因为在工作中遇到的一个mysql主从功能配置的问题所引起的。有一个处在从位置上的mysql是5.1版本的,从5.1到5.6的mysql各种系统管理功能,像系统表表结构、日志文件格式等等均不一致...
  • watermelonbig
  • watermelonbig
  • 2016年10月30日 19:16
  • 6454

linux 升级mysql,以及yum安装制定版本

http://www.cnblogs.com/blackpuppy/p/upgrade_mysql_from_55_to_56_on_centos.html  (原文) 1. 概述 ...
  • skate6
  • skate6
  • 2017年03月27日 11:34
  • 2081

MySQL-5.6升级到5.7最佳实践手册 DBA必备

  • 2016年12月13日 14:08
  • 615KB
  • 下载

mysql中的乱码总结之mysql5中四个设置字符集的系统变量

好多次更换mysql主机商时,都要造成mysql数据的乱码,因为网站开发历史经历了多个mysql版本,而且是在我刚刚学php时一点点做的,因为底层的东西很混乱,当时就没有也不知道如何处理字符串,今天决...
  • ljguo212
  • ljguo212
  • 2012年05月23日 10:13
  • 1204

2.0升级到2.0.2版本操作指南(MYSQL)--国聿软件

  • 2012年09月03日 16:44
  • 308KB
  • 下载

mysql 5.5升级到5.7

  • 2015年12月03日 19:34
  • 3KB
  • 下载

CentOS6/7下MySQL版本升级到5.6或 5.7实践

背景 当我登陆博客时才发现,原来有关Python与Redis的文章浏览量那么高,令人震惊。可惜最近忙于换工作的事情没能把该系列文章写完,以后会抽时间补上。 加入新公司后就面临公司网站系统从外包迁移到云...
  • u012894975
  • u012894975
  • 2016年08月21日 17:13
  • 1088

MYSQL5.1升级到5.5及utf8mb4使用方法

1. mysql5.5升级安装参看以下两篇文章     http://www.centoscn.com/image-text/setup/2014/0303/2485.html     http:...
  • wengchzh
  • wengchzh
  • 2015年03月31日 20:10
  • 5765

mysql 从5.1升级到5.5.33 后 innodb 表出错 及 innodb表修复

从 .ibd 文件导出 innodb 表
  • gold2008
  • gold2008
  • 2013年09月15日 10:36
  • 2165
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mysql 3.23升级到mysql5及升级后搞定乱码
举报原因:
原因补充:

(最多只允许输入30个字)