Discuz教程网

mysql 数据库迁移[转贴]

[复制链接]
authicon php1314 发表于 2011-1-5 13:36:35 | 显示全部楼层 |阅读模式

环境:在windows下建立的数据库,编码一律是GBK
我实验通过的方法:
    一,导出结构性数据:mysqldump -u root 数据名 >filename   //文件名任取,可取txt
                                       mysqldump -u root 数据名  该数据库表名 >filename  //只导出数据库某个表
   二,导出数据:mysql -uroot 数据库名(已存在)  < 上文的filename     
           or             在进入数据库mysql>  source filename.txt   //这样也同上文一样。
    注意,filename要在当前目录。
  三,乱码解决:在源数据库检查"\s",即显示出server,client,session,connect等编码设置。
         如果,更改现数据库为源数据编码的方法:mysqld_safe -u root --character_set_sever=gbk &
         然后mysql -u root 登录,"\s"检查character_set_server编码是否同源数据一样(应该一样了)
             然后用\C utf8  即拿令将改变客户端编码为utf8......   此时,就可以在linux下看到windows移植过来的中文内容了。注意,linux客户端为utf8.(mysql) ,其余的同源数据库设置。
从网上看到下面的方法, 因为麻烦没有遂一尝试,有时间大家可以尝试:
  
导出旧数据库结构(mysql4)
#./bin/mysqldump -uroot -d olddb > /tmp/olddb_create_table.sql    //只转结构
导出数据,不含结构
#./bin/mysqldump -uroot -t --default-character-set=gb2312 olddb > /tmp/olddb_data.sql  //只转数据建立新数据库(mysql5)
#./bin/mysql -uroot
#>create database newdb default character set utf8;
#>use newdb;
导入数据库表结构
#>source /sqldata/olddb_create_tabe.sql;
导入数据库数据
#>set names gb2312;
#>source /sqldata/olddb_data.sql;




上一篇:[转发]Windows 7下安装配置Apache+Mysq+PHPl环境教程
下一篇:[转发]实例讲解MYSQL数据库的查询优化技术
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-5-3 17:35

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表