对于大量数据的导入导出,是件挺麻烦的事,需要考虑很多的细节,这类对于需要大量数据导入导出的朋友可以参考下。
昨日中午帮鲤鱼给某大型团购网站转移数据库服务器,这篇文章本该是昨天转移完成后总结发出来的,但由于一些原因没有及时写出来,现在赶快补上。文章源自很文博客https://www.hinvn.com/很文博客-https://www.hinvn.com/28432.html
首先大概环境是这样的,旧数据库服务器mysql版本5.0 centos系统 无web,无ftp,新数据库服务器mysql5.1 centos nginx。文章源自很文博客https://www.hinvn.com/很文博客-https://www.hinvn.com/28432.html
看到这样的环境首先想法是通过phpmyadmin导入导出,但原数据库服务器无web环境,另外数据库文件大约300M,仅靠phpmyadmin无法导入。文章源自很文博客https://www.hinvn.com/很文博客-https://www.hinvn.com/28432.html
下来准备停止mysql,打包数据库目录,然后覆盖的新服务器的数据库目录下,但鲤鱼尝试说拷贝过去有表段存在问题,所以这种方法也放弃。文章源自很文博客https://www.hinvn.com/很文博客-https://www.hinvn.com/28432.html
最后先到老服务器使用命令文章源自很文博客https://www.hinvn.com/很文博客-https://www.hinvn.com/28432.html
- mysqldump -u用户名 -p 数据库名 > 数据库名.sql
导出为.sql文件,然后zip压缩后,通过另外一台服务器ssh(scp)中转到新数据库服务器,通过下面的语句导入(本可以使用mysqldump -u用户名 -p 数据库名 < 数据库名.sql 但想看到执行进度,所以执行了下面的操作)文章源自很文博客https://www.hinvn.com/很文博客-https://www.hinvn.com/28432.html
- mysql -u root -p
- mysql>use 数据库
- mysql>source /data0/tuan/tuan.sql
这样导入ssh的条目会很多很多,建议找windows服务器挂ssh去执行,我使用公司网络带宽跑满4M,占用我的全部网速。文章源自很文博客https://www.hinvn.com/很文博客-https://www.hinvn.com/28432.html
至此数据库转移已经让我唠叨完了,没有太多的技术性东西,只是给自己记录下,避免忘记,温故而知新嘛。
评论