【菜鸟版】 Linux 安装 MySql 5.7

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【菜鸟版】 Linux 安装 MySql 5.7

安装mysql

1.创建存放安装包的位置,并且进入该目录

命令mkdir /share

命令cd /share

2.查看系统是否已经安装mysql,两种方法都可以

方法一:rpm -qa | grep mysql

方法二:yum list installed | grep mysql

3.如果存在,则移除以前的mysql

命令yum -y remove mysql-libs.x86_64

3.下载安装包

命令wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm


提示wget 命令未找到,所以通过命令yum -y install wget安装依赖插件,插件安装完成后,重新执行命令wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm即可

4.安装 mysql57-community-release-el7-8.noarch.rpm:

5.安装 MySQL

命令yum install mysql-server

安装完后,启动mysql服务

命令systemctl start mysqld

查询出安装生成的默认密码,并复制下来

命令 grep “password” /var/log/mysqld.log

命令mysql -u root -p

输入刚刚拷贝的默认密码,并回车进入mysql>服务

设置新密码为root

这里提示我的密码不能满足要求,这里我们可以修改下密码的限制

命令set global validate_password_policy=0;

设置密码不限制字符类型

命令set global validate_password_length=1;

设置密码不限制位数

ok,现在就可以重新设置新密码了,我这里设置的是root

设置root账户密码不过期

命令ALTER USER ‘root’@‘localhost’ PASSWORD EXPIRE NEVER;

刷新权限

命令flush privileges;

设置用户 root 可以在任意 IP 下被访问:

命令grant all privileges on . to root@“%” identified by “root”;

设置用户 root 可以在本地被访问:

命令grant all privileges on . to root@“localhost” identified by “new password”;

刷新权限生效

退出

6.防火墙开通端口

如果80端口没添加,也要添加一下,我的机器已经是添加的了

重启防火墙

然后通过navicat工具连接数据库即可

改密码

1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:

#vim /etc/my.cnf(注:windows下修改的是my.ini)

在文档内搜索mysqld定位到[mysqld]文本段:

/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)

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

保存文档并退出

2.接下来我们需要重启MySQL:

/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

3.重启之后输入mysql即可进入mysql。

4.接下来就是用sql来修改root的密码

进入到终端当中,敲入 mysql -u root -p 命令然后回车,当需要输入密码时,直接按enter键,便可以不用密码登录到数据库当中

mysql> update user set password=password(“你的新密码”) where user=“root”;

mysql> flush privileges;

mysql> quit


注意:如果在执行该步骤的时候出现ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 错误。则执行下 flush privileges 命令,再执行该命令即可。


到这里root账户就已经重置成新的密码了。


5.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。大功告成!


网上有很多关于这个问题的解决说明,很多刚接触的朋友可能比较迷惑的是在自己的平台上找不到my.cnf或者my.ini文件,如果你是Linux,使用如下方式可以搜索到:

至于windows平台,去安装目录下找一下my.ini吧。

ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’

本意向修改一个用户的密码,网上搜到的命令为如下:

mysql> update user set password=password(“新密码”) where user=”用户名”;

执行后报错  ERROR 1054(42S22) Unknown column ‘password’ in ‘field list’

错误的原因是 5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

所以请使用一下命令:

>mysql -u root -p
Enter password: ********
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 5.7.18-log MySQL Community Server (GPL)

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> use mysql;
Database changed
mysql> select User from user;  #此处为查询用户命令
+-----------+
| User      |
+-----------+
| *******  |
| mysql.sys |
| root      |
+-----------+
3 rows in set (0.00 sec)

mysql> update user set password=password("*******") where user="*******";  #修改密码报错
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
mysql> update mysql.user set authentication_string=password('*******') where user='*******';  #修改密码成功
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql> flush privileges;  #立即生效
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye

n>mysql -u ******* -p #以该用户登录成功.
Enter password: ********
…………………………
mysql>

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1天前
|
Linux 数据处理
Linux命令`install`详解:不仅仅是安装工具
`install`命令在Linux中并非仅用于安装软件,而是用于精确复制文件和目录,设置权限及所有权。它能创建目标目录、处理符号链接并保留时间戳。例如,`install -m 644 source.txt /dest`用于复制文件并设置权限,`install -d -m 755 /dest/dir`创建目录。使用时要注意权限设置,避免误操作,并记录命令以备恢复。
|
1天前
|
SQL 关系型数据库 MySQL
MySQL Workbench的安装与配置
MySQL Workbench的安装与配置
|
1天前
|
弹性计算 监控 Linux
云服务器 ECS产品使用问题之在使用yum安装PHP相关的包时遇到问题,因为系统中找不到php-mysql和php-imap这两个包,该怎么办
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
1天前
|
关系型数据库 MySQL 数据库
MySQL数据库的安装与配置
MySQL数据库的安装与配置
|
1天前
|
存储 弹性计算 关系型数据库
云服务器 ECS产品使用问题之安装MySQL数据库间断性无法连接,提示“数据库链接被拒绝”或“数据库链接丢失”的问题,该怎么解决
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
1天前
|
Linux Shell
保姆级只需五步linux中安装aapt(64位)的方法
保姆级只需五步linux中安装aapt(64位)的方法
|
1天前
|
SQL Linux 数据库
Linux上sqlite的安装和使用方法以及在QT中如何使用sqlite&笔记总结
Linux上sqlite的安装和使用方法以及在QT中如何使用sqlite&笔记总结
|
1天前
|
Ubuntu Linux
|
1天前
|
安全 关系型数据库 MySQL
Mysql 8.0 安装和使用遇到的各种问题(持续更新)
MySQL 8.0 安装到 服务器时,遇到的一些问题;安装、远程访问、密码编码格式不对、大小写区分、密码重置、修改密码 等操作
96 1
|
4天前
|
SQL 关系型数据库 MySQL
Windows 10安装MySQL 5.7完整教程
Windows 10安装MySQL 5.7完整教程
36 2