Linux centos 6.5 - Mysql 安装 、卸载、修改密码、忘记密码 并异常处理

简介: Linux centos 6.5 - Mysql 安装 、卸载、修改密码、忘记密码 并异常处理

Linux  centos 6.5 安装、卸载、启动 Mysql 并异常处理

一、Linux  centos 6.5 安装 Mysql 5.1.73(yum命令)

1.1  检测该服务器中是否有Mysql。

# yum list installed | grep mysql

2.1 删除系统自带Mysql

# yum -y remove mysql-libs.x86_64

2.2 使用命令查看yum上提供的mysql数据库可下载的版本:

yum list | grep mysql

然后我们可以通过输入 yum install -y mysql-server mysql mysql-devel 命令将mysql mysql-server mysql-devel都安装好(注意:安装mysql时我们并不是安装了mysql客户端就相当于安装好了mysql数据库了,我们还需要安装mysql-server服务端才行)

yum install -y mysql-server mysql mysql-deve

2.3 查看版本

rpm -qi mysql-server

2.4 启动mysql服务

service mysqld start

2.5 设置是否开机自启动

 chkconfig --list | grep mysqld   //命令来查看mysql服务是不是开机自动启动
 chkconfig mysqld on              //命令来将其设置成开机启动,下次不用再设置
 mysqld             0:关闭    1:关闭    2:启用    3:启用    4:启用    5:启用    6:关闭

2.6 为root账户设置密码

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

/usr/bin/mysqladmin -u root password 'new-password'  // 为root账号设置密码

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

2.7 登录mysql

mysql -u root -p

二、Linux  centos 6.5 安装 Mysql 8.0 (rpm命令)Mysql5.7 相同

2.1、检测该服务器中是否有Mysql。删除,同上

2.2  网上下载mysql8.0

2.3 上传并解压到指定文件夹下面(注意的是不是 -zxvf 而是-xvf)

tar -xvf mysql-8.0.13-1.el6.x86_64.rpm-bundle.tar -C /usr/local/

2.4 按照指定顺序进行安装(ivh中, i-install安装;v-verbose进度条;h-hash哈希校验)

[root@centos03 mysql8]# rpm -ivh mysql-community-common-8.0.13-1.el6.x86_64.rpm
warning: mysql-community-common-8.0.13-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
   1:mysql-community-common ########################################### [100%]
[root@centos03 mysql8]# rpm -ivh mysql-community-libs-8.0.13-1.el6.x86_64.rpm
warning: mysql-community-libs-8.0.13-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
   1:mysql-community-libs   ########################################### [100%]
[root@centos03 mysql8]# rpm -ivh mysql-community-libs-compat-8.0.13-1.el6.x86_64.rpm
warning: mysql-community-libs-compat-8.0.13-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
   1:mysql-community-libs-co########################################### [100%]
[root@centos03 mysql8]# rpm -ivh mysql-community-client-8.0.13-1.el6.x86_64.rpm
warning: mysql-community-client-8.0.13-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
   1:mysql-community-client ########################################### [100%]
[root@centos03 mysql8]# rpm -ivh mysql-community-server-8.0.13-1.el6.x86_64.rpm
warning: mysql-community-server-8.0.13-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
   1:mysql-community-server ########################################### [100%]
[root@centos03 mysql8]# 

三、启动Mysql和基本操作

# 查看mysql是否启动
service mysqld status
 
# 启动mysql
service mysqld start
 
# 停止mysql
service mysqld stop
 
# 重启mysql
service mysqld restart

mysql安装完成之后我们是没有设置密码的,但是mysql为我们设置了一个临时的密码,我们可以查看mysql的日志知道这个临时密码。

3.1 查看临时密码

grep password /var/log/mysqld.log

3.2 添加用户,设置密码,给与相应权限

mysql -u root -p

3.3 忘记密码 操作步骤

(1)vim /etc/my.cnf

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:

保存文档并退出:

(2)重启MySQL。/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

(3)输入#mysql即可进入mysql。

mysql> use mysql;
mysql> update user set password=password("你的新密码") where user="root";
mysql> flush privileges;
mysql> quit

在第二各种,Mysql5.7 改了字段

update mysql.user set authentication_string=password('root') where user='root' ;即可

(4)编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。完事!

四、异常处理 初始化 MySQL 数据库: [失败]

4.1 检测命令是否 [ERROR] Aborting
(1)mysqld --initialize --user=mysql    

[root@centos03 mysql57]# mysqld --initialize --user=mysql  
2018-11-28T16:32:29.300355Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-11-28T16:32:29.307011Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting.
2018-11-28T16:32:29.307039Z 0 [ERROR] Aborting

(2)删除残留数据 rm -rf /var/lib/mysql/*

[root@centos03 mysql57]# rm -rf /var/lib/mysql/*
[root@centos03 mysql57]# mysqld --initialize --user=mysql
[root@centos03 mysql57]# service mysqld start
正在启动 mysqld: [确定]

总结别人经验

4.2 查找初始密码(我这边之所以有两个密码,应该就是之前没卸载干净,直觉应该用后边的新密码登录)

[root@mini2 upload]# grep 'temporary password' /var/log/mysqld.log
2017-08-29T05:00:02.613275Z 1 [Note] A temporary password is generated for root@localhost: tzqjMvkHH3+C
2017-08-29T05:31:51.340338Z 1 [Note] A temporary password is generated for root@localhost: Adgwggdr%1e2
[root@mini2 upload]# mysql -uroot -p

修改密码并允许其他机器上客户端登录

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option

五、卸载Mysql

1.关闭MySQL服务

[root@vm-xiluhua][/etc]$ service mysqld stop
Redirecting to /bin/systemctl stop  mysqld.service

2.卸载MySQL软件包

2.1.查询系统下的所有mysql软件包

[root@vm-xiluhua][/etc]$ rpm -aq | grep -i mysql
mysql-community-server-5.7.15-1.el7.x86_64
mysql-community-libs-5.7.15-1.el7.x86_64
mysql-community-common-5.7.15-1.el7.x86_64
mysql-community-client-5.7.15-1.el7.x86_64

2.2.卸载系统下的所有mysql软件包

[root@vm-xiluhua][/etc]$ rpm -ev mysql-community-server-5.7.15-1.el7.x86_64
 
软件包准备中...
mysql-community-server-5.7.15-1.el7.x86_64
警告:/etc/my.cnf 已另存为 /etc/my.cnf.rpmsave
 
[root@vm-xiluhua][/etc]$ rpm -ev mysql-community-client-5.7.15-1.el7.x86_64
软件包准备中...
mysql-community-client-5.7.15-1.el7.x86_64
 
 
# 忽略依赖 --nodeps
[root@vm-xiluhua][/etc]$ rpm -ev mysql-community-libs-5.7.15-1.el7.x86_64 --nodeps
软件包准备中...
mysql-community-libs-5.7.15-1.el7.x86_64
 
[root@vm-xiluhua][/etc]$ rpm -ev mysql-community-common-5.7.15-1.el7.x86_64
软件包准备中...
mysql-community-common-5.7.15-1.el7.x86_64

3.删除MySQL安装文件夹

查看剩下有哪些文件夹

[root@vm-xiluhua][/etc]$ find / -name "mysql"
/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib/python2.7/site-packages/clufter/filters/cluster/rm/mysql
/usr/lib/ocf/resource.d/heartbeat/mysql
/usr/lib64/perl5/vendor_perl/auto/DBD/mysql
/usr/lib64/perl5/vendor_perl/DBD/mysql
/usr/share/resource-agents/ocft/configs/mysql
/usr/share/mysql
/usr/local/mysql

删除

[root@vm-xiluhua][/etc]$ rm -rf /var/lib/mysql

再次查看还剩下有哪些

[root@vm-xiluhua][/etc]$ find / -name "mysql"
/usr/lib/python2.7/site-packages/clufter/filters/cluster/rm/mysql  # 非直属包下的,就留着
/usr/lib/ocf/resource.d/heartbeat/mysql       # 非直属包下的,就留着
/usr/lib64/perl5/vendor_perl/auto/DBD/mysql    # 非直属包下的,就留着
/usr/lib64/perl5/vendor_perl/DBD/mysql        # 非直属包下的,就留着
/usr/share/resource-agents/ocft/configs/mysql    # 非直属包下的,就留着
/usr/local/mysql  #也可以删除,因为这本还有进一步测试,所以留着
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
10月前
|
Ubuntu 关系型数据库 MySQL
MySQL源码编译安装
本文详细介绍了MySQL 8.0及8.4版本的源码编译安装全过程,涵盖用户创建、依赖安装、cmake配置、编译优化等步骤,并提供支持多Linux发行版的一键安装脚本,适用于定制化数据库部署需求。
2371 4
MySQL源码编译安装
|
10月前
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
1690 4
MySQL二进制包安装
|
10月前
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
928 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
10月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
956 6
|
11月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
1055 1
二、Linux文本处理与文件操作核心命令
|
11月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
726 137
|
JSON 自然语言处理 Linux
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
1203 143
linux命令—tree
|
11月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
1662 58
|
10月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
1577 2
|
11月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
861 16