在centos7下安装mysql5.7

一:下载mysql 去官网上去下载;这里我下载的二进制格式的

https://dev.mysql.com/downloads/mysql/ 去下载对应平台的mysql版本

二:解压mysql并采用yum安装本地rpm方式

[root@xuegod63 ~]# unzip mysql5.7.zip 
Archive: mysql5.7.zip
inflating: mysql-community-libs-compat-5.7.20-1.el7.x86_64.rpm
inflating: mysql-community-server-5.7.20-1.el7.x86_64.rpm
inflating: mysql-community-client-5.7.20-1.el7.x86_64.rpm
inflating: mysql-community-common-5.7.20-1.el7.x86_64.rpm
inflating: mysql-community-libs-5.7.20-1.el7.x86_64.rpm
[root@xuegod63 ~]# yum -y localinstall ./*.rpm

三:启动mysql服务 并查看是否启动成功;看到有3306就代表启动成功

[root@xuegod63 ~]# systemctl start mysqld
[root@xuegod63 ~]# ss -tnl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:22 *:*
LISTEN 0 100 127.0.0.1:25 *:*
LISTEN 0 128 :::22 :::*
LISTEN 0 100 ::1:25 :::*
LISTEN 0 80 :::3306 :::*

四:启动mysql 报错解决mysql密码问题  

这时候可以看见是失败的;因为mysql5.7默认是不可以直接登录的;这里我们给出了两种解决方式:

4.1:第一种解决mysql5.7初启动密码问题

[root@xuegod63 ~]# grep "password" /var/log/mysqld.log
2017-12-12T11:07:34.808179Z 1 [Note] A temporary
password is generated for root@localhost: %aqY==#QD7+s 这是临时获取的密码等会 登录使用
2017-12-12T11:09:50.817347Z 3 [Note] Access denied for user 'root'@'localhost' (using password: NO)
[root@xuegod63 ~]# mysql -uroot -hlocalhost -p%aqY==#QD7+s
[这里要不能登录的话就 mysql -uroot -hlocalhost -p 去手动输入密码]
mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor.
Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.7.20 Copyright (c) 2000, 2017, Oracle
and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c'
to clear the current input statement.
mysql>

  

第一次通过# grep "password" /var/log/mysqld.log 命令获取MySQL的临时密码
用该密码登录到服务端后,必须马上修改密码,不然操作查询时报错误
刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
如果想设置简单密码,如下操作:
方法一:首先,修改validate_password_policy参数的值
mysql> set global validate_password_policy=0; #定义复杂度
mysql> set global validate_password_length=1; #定义长度 默认是8
mysql>set password for 'root'@'localhost'=password('123456');

方法二:在/etc/my.cnf 可关闭密码强度审计插件,重启mysql服务
validate-password=ON/OFF/FORCE/FORCE_PLUS_PERMANENT: 决定是否使用该插件(及强制/永久强制使用)。

4.2:第二种解决mysql5.7初启动密码问题

MySQL5.7的跳过授权表登录。mysql启动时跳过授权表,使用无密码登陆,在这个会话中再把授权表加载进来,把密码修改之后重启即可。
1.关闭MySQL数据库
[root@localhost ~]# systemctl stop mysqld
Redirecting to /bin/systemctl stop mysqld.service
[root@localhost ~]# mysqld --help
[root@localhost ~]# mysqld --verbose --help >a.txt
加上--skip-grant-tables这个参数重启时,便可以跳过密码验证这个参数。
--skip-grant-tables (Start without grant tables. This gives all users FULL ACCESS to all tables.)
2.进入/etc/my.cnf配置文件把 validate_password=off参数注释掉。(如果有的话)
3.先执行
[root@localhost ~]# systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
([root@localhost ~]# mysqld_safe --skip-grant-tables & 当此命令没有时使用上面的命令)
[root@localhost ~]# systemctl start mysqld 来启动数据库。
4.查看数据库是否启动 netstat -tunlp | grep 3306
5.使用mysql -u root 直接进行登陆
6.等进去之后执行 mysql> flush PRIVILEGES;
7.重新设置密码 mysql> alter user 'root'@'localhost' identified by '1234567';
8.执行 mysql> flush tables; 并推出
9.重启mysql的服务并登陆

  

centos7 下安装rpm的mysql 5.7的更多相关文章

  1. 在centos7下安装java8和mysql

    一般学习java和部署项目都是在本地部署,但是生产环境一般都是在linux环境下,部署和安装环境都是在控制台下进行操作的,没有windows的可视化的操作界面,对与linux的命令掌握和操作对小白来说 ...

  2. centos7下安装pip以及mysql等软件

    1.安装pip 安装失败了的提示: No package pip available.Error: Nothing to do 解决方法: 需要先安装扩展源EPEL. EPEL(http://fedo ...

  3. CENTOS7下安装和配置MYSQL问题记录

    1.安装 下载mysql源安装包 shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm ...

  4. CentOS7下安装MySQL并配置远程连接

    一.CentOS7下安装MySQL数据库 CentOS7默认的安装包里面已经没有 MySQL-Server安装包了,远程镜像中也没有了. 默认的是MariaDB (MySQL的一个分支,开发这个分支的 ...

  5. centos7下安装指定版本mysql5.7.23

    现在mysql版本已经到MySQL 8.0(GA)稳定版本了,所以需求是想简单又快速在centos7下安装指定版本例如MySQL 5.7(GA)版本有下面这种方法 首先需要到mysql官网这里下载对应 ...

  6. MariaDB Centos7 下安装MariaDB

    Centos7 下安装MariaDB by:授客 QQ:1033553122 1.下载安装文件 rpm包为例,对于标准服务器安装,至少需要下载client,shared,serve文件(安装时如果少了 ...

  7. Centos7下安装Seafile实现私有网盘

    Seafile是一个开源.专业.可靠的云存储平台:解决文件集中存储.共享和跨平台访问等问题,由北京海文互知网络有限公司开发,发布于2012年10月:除了一般网盘所提供的云存储以及共享功能外,Seafi ...

  8. centos7 下 安装部署nginx

    centos7 下 安装部署nginx 1.nginx安装依赖于三个包,注意安装顺序 a.SSL功能需要openssl库,直接通过yum安装: #yum install openssl b.gzip模 ...

  9. 在linux下安装并配置mysql数据库

    在linux下安装并配置mysql数据库 工具/原料   MySql5.6 CentOS 方法/步骤   1 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql ...

随机推荐

  1. [C3] Andrew Ng - Neural Networks and Deep Learning

    About this Course If you want to break into cutting-edge AI, this course will help you do so. Deep l ...

  2. luoguP2178 [NOI2015]品酒大会(后缀数组做法)

    题意 因为一个\(k\)相似必定为\(k-1,k-2....0\)相似,对于一个\(lcp\)为\(k\)后缀对\((i,j)\),我们只用把它的贡献加在\(k\)的答案上,最后求一个后缀和和后缀ma ...

  3. win10 + 3ds Max 2014 问题记录

    3ds Max 下载: https://zixue.3d66.com/popsoft_201.html VRay 下载: https://zixue.3d66.com/softhtml/showsof ...

  4. jQuery 源码解析(六) $.each和$.map的区别

    $.each主要是用来遍历数组或对象的,例如: var arr=[11,12,13,14]; $.each(arr,function(element,index){ //遍历arr数组 console ...

  5. 进程间通信的信道与控制(io机制)

    进程间通信 = 信道 + 控制(状态) + io 信道: 1.流式信道: 2.队列信道: 3.共享内存信道: 控制机制: 数据就绪状态的通知与数据获取机制. 1.信号: 2.循环: 3.io机制

  6. array list 的特点及几种遍历方法

    public class temp { public static void main(String[] args)throws Exception { //ArrayList 在定义时长度为空 ,在 ...

  7. SQLAlchemy多表操作

    目录 SQLAlchemy多表操作 一对多 数据准备 具体操作 多对多 数据准备 操作 其它 SQLAlchemy多表操作 一对多 数据准备 models.py from sqlalchemy.ext ...

  8. SQLServer 高效 分页存储过程

    /********************************************************************** 参数:@PrimaryKey 主键,@OrderBy 排 ...

  9. windows下编写dll

    dll的优点 简单的说,dll有以下几个优点: 1) 节省内存.同一个软件模块,若是以源代码的形式重用,则会被编译到不同的可执行程序中,同时运行这些exe时这些模块的二进制码会被重复加载到内存中.如果 ...

  10. 原生js与jquery加载页面元素比较

    原生js:将获取元素的语句写到页面头部,会因为元素还没有加载而出错,js提供了window.onload 这个方法事先加载元素 <script type="text/javascrip ...