转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/52768613

前言:数据库每天的数据不断增多,自动删除机制总体风险太大,想保留更多历史性的数据供查询,于是从小的hbase换到大的hbase上,势在必行。今天记录下这次数据仓库迁移。看下Agenda:

  • 彻底卸载MySQL
  • 安装MySQL
  • MySQL数据库的初始化及相关配置
  • 存储数据目录修改
  • 客户端连接又来问题(中间过程)
  • 小总结

彻底卸载MySQL

yum方式安装的MySQL

yum remove mysql mysql-server mysql-libs compat-mysql51
rm -rf /var/lib/mysql
rm /etc/my.cnf

查看是否还有mysql相关:

rpm -qa|grep mysql

rpm方式安装的MySQL

  • 查看系统中是否以rpm包安装的mysql:
[root@itv-h5-web-online001-sjhl ~]# rpm -qa | grep -i mysql
MySQL-server-5.6.17-1.el6.i686
MySQL-client-5.6.17-1.el6.i686
  • 卸载mysql
[root@itv-h5-web-online001-sjhl ~]# rpm -e MySQL-server-5.6.17-1.el6.i686
[root@itv-h5-web-online001-sjhl ~]# rpm -e MySQL-client-5.6.17-1.el6.i686
  • 删除mysql服务
[root@itv-h5-web-online001-sjhl ~]# chkconfig --list | grep -i mysql
[root@itv-h5-web-online001-sjhl ~]# chkconfig --del mysql
  • 删除分散mysql文件夹
[root@itv-h5-web-online001-sjhl ~]# whereis mysql 或者 find / -name mysql
mysql: /usr/lib/mysql /usr/share/mysql

清空相关mysql的所有目录以及文件

rm -rf /usr/lib/mysql
rm -rf /usr/share/mysql
rm -rf /usr/my.cnf

通过以上几步,mysql应该已经完全卸载干净了。

安装MySQL

通过yum来进行mysql的安装

我是通过yum的方式来进行mysql的数据库安装,首先我们可以输入 yum list | grep mysql 命令来查看yum上提供的mysql数据库可下载的版本:

[root@itv-h5-web-online001-sjhl ~]# yum list | grep mysql

就可以得到yum服务器上mysql数据库的可下载版本信息:

然后我们可以通过输入

yum install -y mysql-server mysql mysql-devel 

命令将mysql mysql-server mysql-devel都安装好(注意:安装mysql时我们并不是安装了mysql客户端就相当于安装好了mysql数据库了,我们还需要安装mysql-server服务端才行)

[root@itv-h5-web-online001-sjhl ~]# yum install -y mysql-server mysql mysql-deve

在等待了一番时间后,yum会帮我们选择好安装mysql数据库所需要的软件以及其它附属的一些软件

我们发现,通过yum方式安装mysql数据库省去了很多没必要的麻烦,当出现下面的结果时,就代表mysql数据库差不多安装成功了。

此时我们可以通过如下命令,查看刚安装好的mysql-server的版本

[root@itv-h5-web-online001-sjhl ~]# rpm -qi mysql-server

我们安装的mysql-server并不是最新版本,如果你想尝试最新版本,那就去mysql官网下载rpm包安装(不过还是不建议安装最新的,可能有各种未知的问题),至此我们的mysql数据库已经安装完成了。

MySQL数据库的初始化及相关配置

我们在安装完mysql数据库以后,会发现会多出一个mysqld的服务,这个数据库服务,我们通过输入 service mysqld start 命令就可以启动我们的mysql服务。

注意:如果我们是第一次启动mysql服务,mysql服务器首先会进行初始化的配置,如:

[root@itv-h5-web-online001-sjhl ~]# service mysqld start

然而问题来了:Starting mysqld : [Failed]
然后看了下log是说:Do you already have another mysqld server running on port: 3306?
是说是不是有mysqld 占用了3306端口,明明已卸载了。。

接着看下端口的状态:
检查mysql 的端口号

[root@itv-h5-web-online001-sjhl ~]# netstat -a -t -n|grep 3306
[root@itv-h5-web-online001-sjhl ~]# netstat -nltp|grep mysql

把服务停掉:

[root@itv-h5-web-online001-sjhl ~]# service mysqld stop

接着查下是否有mysqld进程在

[root@itv-h5-web-online001-sjhl ~]# ps -ef|grep mysqld

果然在占了3306端口,只有kill这个,重新start,就应该没问题了。
最后用命令:

[root@itv-h5-web-online001-sjhl ~]# /etc/inint.d/mysqld start

来启动mysql服务,这时就正常了。

mysql数据库安装完以后只会有一个root管理员账号,但是此时的root账号还并没有为其设置密码,在第一次启动mysql服务时,会进行数据库的一些初始化工作,在输出的一大串信息中,我们看到有这样一行信息 :/usr/bin/mysqladmin -u root password ‘new-password’  // 为root账号设置密码

所以我们可以通过 该命令来给我们的root账号设置密码(注意:这个root账号是mysql的root账号,非Linux的root账号)

[root@itv-h5-web-online001-sjhl ~]# mysqladmin -u root password '123456'

此时我们就可以通过 mysql -u root -p 命令来登录我们的mysql数据库

存储数据目录修改

由于默认mysql装的分区盘空间很小,需要修改对应存储数据文件路径,找到/etc/mycnf中,用vim打开,对应修改,datadir就是要修改的目标,socket本想一快改了的,发现改了后,不能登录mysql了,应该还有一配置文件未改,于是暂时放弃了。

用命令

/etc/init.d/mysqld restart

进行重启mysql服务,即可生效(ps:一定要事先把mysql服务先停掉,再修改以上文件)

客户端连接又来问题

当以为上面大功告吉的了的时候,用mysql可视化工具支连接,发现又报如下错误:

原因是未对远程客户端口进行授权,接着开始授权:

以下是一些可选方案:

  • 例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;FLUSH   PRIVILEGES;
  • 如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.6' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;FLUSH   PRIVILEGES;
  • 如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器的dk数据库,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON dk.* TO 'myuser'@'192.168.1.6' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;FLUSH   PRIVILEGES;

这下才是大功告成!!!!

小总结

最后总结三条:

  • 先在目标机器上安装好环境。如mysql
  • 进行数据配置,并且测试能通过访问
  • 数据迁移,原有机器上打包copy到新机器上。

附上一些常用MySQL启动、停止、重启常用命令:

启动
1、使用 service 启动:

service mysqld start (5.0版本是mysqld)
service mysql start (5.5.7版本是mysql)

2、使用 mysqld 脚本启动:

/etc/inint.d/mysqld start

3、使用 safe_mysqld 启动:

safe_mysqld&

停止
1、使用 service 启动:

service mysqld stop

2、使用 mysqld 脚本启动:

/etc/inint.d/mysqld stop

重启
1、使用 service 启动:

service mysqld restart
service mysql restart (5.5.7版本命令)

2、使用 mysqld 脚本启动:

/etc/init.d/mysqld restart

第一时间获得博客更新提醒,以及更多android干货,源码分析,欢迎关注我的微信公众号,扫一扫下方二维码或者长按识别二维码,即可关注。

如果你觉得好,随手点赞,也是对笔者的肯定,也可以分享此公众号给你更多的人,原创不易

Linux下一次数据仓库进行迁移记录相关推荐

  1. Linux MySQL数据库冷迁移采坑记录

    Linux MySQL数据库冷迁移采坑记录 当前文件系统已满,需要将MySQL默认路径迁移到新文件系统下. MySQL数据库文件原位置:/var/lib/mysql . 要移动至:/mysql/mys ...

  2. linux 系统迁移到固态硬盘,Linux系统迁移记录(从HDD到SSD)

    Linux系统迁移记录(从HDD到SSD) 我把HDD上的Linux迁移到SSD上,重装系统太麻烦了,所以我直接拷贝整个系统,然后重建引导恢复,以下是记录. 两块硬盘 首先把SSD换上去,HDD用硬盘 ...

  3. 原版英文书籍《Linux命令行》阅读记录5 | 使用命令

    背景: 阅读英文原作只为了更好地理解书中的精髓,当然也是为了更好地掌握书中的技巧.我们会坚持阅读全书,并记录书中的精髓. 在前面的章节里,我们学到的都是一些神秘的命令,我们不知道他们怎么来的,不过接下 ...

  4. linux 系统迁移到固态硬盘,windows 和 Linux 系统 从硬盘迁移到SSD

    windows 和 Linux 系统 从硬盘迁移到SSD 1. Windows 实验室这次搞了几块三星的ssd,型号是:三星(SAMSUNG) 850 EVO 250G SATA3 固态硬盘 三星有个 ...

  5. Linux GPIO键盘驱动开发记录_OMAPL138

    Linux GPIO键盘驱动开发记录_OMAPL138 Linux基本配置完毕了,这几天开始着手Linux驱动的开发,从一个最简单的键盘驱动开始,逐步的了解开发驱动的过程有哪些.看了一下Linux3. ...

  6. linux服务器关机日期,linux服务器last查看关机记录

    1.查看重启记录 last reboot命令 [root@test ~]# last reboot reboot system boot 2.6.-.el6.x Mon May : - : (+:) ...

  7. Linux安装7z压缩软件记录

    ** Linux安装7z压缩软件记录 ​ 官网下载文件p7zip_16.02_src_all.tar.bz2 下载链接 将下载的包上传到linux,使用如下命令解压缩并安装 解压 tar xjvf p ...

  8. linux prompt模式,Linux利用PROMPT_COMMAND实现操作记录的功能

    Linux中的PROMPT_COMMAND会记录下出现提示符前面的命令,利用这个特性可以实现记录所有用户的操作记录. root用户身份下,进行以下操作 vi /etc/profile #在最后一行追加 ...

  9. 移植Linux(ucLinux)到GBA的记录

    移植Linux(ucLinux)到GBA的记录 v1.0 teawater@hotmail.com 1.感谢 向所有直接和间接帮助过我的的朋友们表示衷心的感谢,因为人数太多我就不一一提到了. 2.写在 ...

  10. Linux下svn服务器迁移

    Linux下svn服务器迁移 1.介绍迁移方式: 1.由于项目工作需要进行svn服务器的迁移,对此简要介绍svn服务器的迁移方案. 2.主要迁移方式: svnadmin dump svnadmin h ...

最新文章

  1. php+imagick详解,PHP中imagick函数的中文解释_php技巧
  2. Vue中使用el-popover实现悬浮弹窗显示图片预览
  3. Servlet开发(二)
  4. Verilog定义计算位宽的函数clogb2
  5. 观物外篇-唐-邵雍:(一)
  6. 如何使antd中table表格不换行
  7. Linux 使用 jstat 命令查看 jvm 的 GC 情况
  8. 一文详解,RocketMQ事务消息
  9. cesium米转换经纬度_Cesium 坐标系转换
  10. Linux设备模型(9)_device resource management ---devm申请空间【转】
  11. 用AI算法分析光影看到盲点:这项MIT新研究偷学到二娃技能
  12. 你的工资基础决定你的前途
  13. asp与php的区别
  14. EXcel中如何做一个组合统计图?
  15. Google网络硬盘GDrive在几个月内即将成真?!
  16. 14年macmini装双硬盘_低配版Mac mini 2014机械硬盘换ssd图解
  17. 史诗手册!微信小程序新手自学入门宝典!你想要的都在这里
  18. HTML页面只能使用微信浏览器打开
  19. 【2019年04月04日】股市指数估值排名
  20. Github风格头像生成器

热门文章

  1. mysql中join操作_Mysql中的join操作
  2. 简单比较init-method,afterPropertiesSet和BeanPostProcessor
  3. 深度学习笔记_搭建一个简单网络(完整版)_手写数字识别MNIST
  4. 浅谈分辨率对模型影响以及训练方法
  5. AI 框架部署方案之模型转换
  6. Spring Cloud之Zuul网关集群
  7. docker镜像创建
  8. tamtam-nuget-imageserver
  9. 【OpenCV学习笔记】【教程翻译】三( 车牌检测之区域分割)
  10. 【C++编程技巧】根据字符串中的指定字符作为分界将字符串拆分