CentOS 7 x64下安装MySql5.7图文详解

2024-09-08 12:48

本文主要是介绍CentOS 7 x64下安装MySql5.7图文详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

参考:
https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/
http://www.jianshu.com/p/7cccdaa2d177
http://www.linuxidc.com/Linux/2016-09/135288.htm

最近搞了台阿里云服务器,搭载的是CentOS 7系统,这里记录下mysql5.7的安装流程

查看CentOS 7下的所以目录

参考:
https://teakki.com/p/57dbbbc59128129803f3aa47
http://blog.csdn.net/longxu0872/article/details/71168340
执行命令cd /,跳转到根目录,再执行ls -l命令:
陈科肇

陈科肇
/boot:系统引导文件,内核
/bin:用户的基本命令
/dev:设备文件
/etc:配置文件
/home:用户家目录
/root:root用户家目录
/sbin:管理类的基本命令
/tmp:临时文件存放地
/usr:共享的只读数据
/mnt:临时文件系统挂载点
/media:移动设备挂载点
/opt:第三方应用程序的安装位置
/srv:系统运行的服务用到的数据
/var:变化的数据文件
/proc:用于输出内核与进程信息相关的虚拟文件系统
/sys:用于输出当前系统上硬件设备相关信息的虚拟文件系统

sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等

Uvh作用

linux 安装包的时候使用 Uvh解释
U: 升级
v,h:显示详细信息和安装进度
i:安装
U可以保证同一个包只有一个版本存在,i会安装同一个包的多个版本

rpm介绍

rpm各个部分的意义:rpm包软件名称.主版本号.次版本号.源程序发行号-rpm包的发行号.主机平台.cup架构
例如:glibc-common-2.6.32-358.el6.i386

el5 和 el6 是RedHat Linux的两个版本,EL = Enterprise Linux
这个rpm包名里面包含el6,应该指示这个glibc的包适用于RedHat EL6的版本
CentOS(Community Enterprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,所以这个rpm应该可以用于centos

使用 uname -a命令可以查看el版本(uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)

uname -a

查看出当前CentOS 7 主机平台为el7版本

wget命令

wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。

来自: http://man.linuxde.net/wget

查看MySQL Yum存储库

MySQL Yum存储库提供用于在Linux平台上安装MySQL服务器,客户端和其他组件的RPM(RPM软件包管理器)软件包。这些软件包还可以升级和替换从Linux发行版本的本机软件仓库安装的任何第三方MySQL软件包。

在MySQL官网中下载Yum源rpm安装包:http://dev.mysql.com/downloads/repo/yum/
陈科肇

这里知道选什么了吧,当然是el7啦(mysql57-community-release-el7-11.noarch.rpm)

A Quick Guide to Using the MySQL Yum Repository(使用MySQL Yum存储库的快速指南)

  • MySQL的新安装步骤

  • 使用MySQL Yum Repository升级MySQL

MySQL安装步骤

1.添加MySQL Yum存储库

a.转到MySQL Yum存储库的下载页面

网址为 http://dev.mysql.com/downloads/repo/yum/

b.选择并下载您的平台的发行包

使用以下命令下载:

shell> wget  https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

陈科肇

下载已经完成,我们使用ls -l查看下当前目录

陈科肇

c.使用以下命令安装下载的发行包

例如,对于基于EL7的系统的版本,命令是:

shell> sudo rpm -Uvh mysql57-community-release-el7-11.noarch.rpm

陈科肇

2.选择版本系列

shell> more /etc/yum.repos.d/mysql-community.repo

查看文件,可以看到当前准备安装的是5.7版本
陈科肇

3.安装MySQL

通过以下命令安装MySQL:

shell> sudo yum install mysql-community-server

4.启动MySQL服务器

陈科肇

a.使用以下命令启动MySQL服务器

基于EL7的平台,这是首选命令:

shell> sudo systemctl start mysqld.service

b.使用以下命令检查MySQL服务器的状态:

基于EL7的平台,这是首选命令:

shell> sudo systemctl status mysqld.service

使用root登录mysql

问题:

[root@xxx /]# mysql -u root -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

解决方案:

在安装mysql的时候,会随机生成root的密码, 记得要看安装log文件

[root@xxx /]# cat /var/log/mysqld.log |grep password
2017-11-02T02:55:12.307984Z 1 [Note] A temporary password is generated for root@localhost: ,>HZ*d7yP+5W
2017-11-02T03:01:15.789598Z 3 [Note] Access denied for user 'root'@'localhost' (using password: YES)
2017-11-02T03:01:42.172342Z 4 [Note] Access denied for user 'root'@'localhost' (using password: YES)
2017-11-02T03:01:59.269867Z 5 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2017-11-02T04:23:39.602270Z 6 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2017-11-02T04:25:01.125469Z 7 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2017-11-02T04:25:54.567185Z 8 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2017-11-02T04:29:56.571195Z 9 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2017-11-02T04:34:50.933040Z 10 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2017-11-02T04:35:22.433484Z 11 [Note] Access denied for user 'root'@'localhost' (using password: NO)
2017-11-02T04:37:29.847188Z 0 [Note] Shutting down plugin 'validate_password'
2017-11-02T04:37:31.560031Z 0 [Note] Shutting down plugin 'sha256_password'
2017-11-02T04:37:31.560033Z 0 [Note] Shutting down plugin 'mysql_native_password'
[root@xxx /]# 

可以看到随机生成的密码是,>HZ*d7yP+5W
使用命令mysql -u root -p,之后 输入密码即可

你必须重新设置密码才能执行语句

mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

1、修改/etc/my.cnf,在 [mysqld] 小节下添加一行:skip-grant-tables=1(这一行配置让 mysqld 启动时不对密码进行验证
)
2、重启mysqld 服务:systemctl restart mysqld
3、使用 root 用户登录到 mysql:mysql -uroot
4、切换到mysql数据库,更新 user 表:
use mysql
update user set authentication_string = password(‘123456’),password_expired = ‘N’, password_last_changed = now() where user = ‘root’;
5、退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1的内容
6、重启mysqld 服务,再用新密码登录即可

mysql -uroot -p

在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string

修改编码

参考 :http://blog.csdn.net/u013474104/article/details/52486880
在 /etc/my.cnf 中设置默认的编码

创建数据库和用户

CREATE DATABASE <datebasename> CHARACTER SET utf8;
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
GRANT privileges ON databasename.tablename TO 'username'@'host';
SHOW GRANTS FOR 'username'@'host';
REVOKE privilege ON databasename.tablename FROM 'username'@'host';
DROP USER 'username'@'host';

待续…

这篇关于CentOS 7 x64下安装MySql5.7图文详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1148154

相关文章

mybatis执行insert返回id实现详解

《mybatis执行insert返回id实现详解》MyBatis插入操作默认返回受影响行数,需通过useGeneratedKeys+keyProperty或selectKey获取主键ID,确保主键为自... 目录 两种方式获取自增 ID:1. ​​useGeneratedKeys+keyProperty(推

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class

Java中的数组与集合基本用法详解

《Java中的数组与集合基本用法详解》本文介绍了Java数组和集合框架的基础知识,数组部分涵盖了一维、二维及多维数组的声明、初始化、访问与遍历方法,以及Arrays类的常用操作,对Java数组与集合相... 目录一、Java数组基础1.1 数组结构概述1.2 一维数组1.2.1 声明与初始化1.2.2 访问

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected

一文详解SpringBoot中控制器的动态注册与卸载

《一文详解SpringBoot中控制器的动态注册与卸载》在项目开发中,通过动态注册和卸载控制器功能,可以根据业务场景和项目需要实现功能的动态增加、删除,提高系统的灵活性和可扩展性,下面我们就来看看Sp... 目录项目结构1. 创建 Spring Boot 启动类2. 创建一个测试控制器3. 创建动态控制器注

C#读写文本文件的多种方式详解

《C#读写文本文件的多种方式详解》这篇文章主要为大家详细介绍了C#中各种常用的文件读写方式,包括文本文件,二进制文件、CSV文件、JSON文件等,有需要的小伙伴可以参考一下... 目录一、文本文件读写1. 使用 File 类的静态方法2. 使用 StreamReader 和 StreamWriter二、二进

Conda与Python venv虚拟环境的区别与使用方法详解

《Conda与Pythonvenv虚拟环境的区别与使用方法详解》随着Python社区的成长,虚拟环境的概念和技术也在不断发展,:本文主要介绍Conda与Pythonvenv虚拟环境的区别与使用... 目录前言一、Conda 与 python venv 的核心区别1. Conda 的特点2. Python v