CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解

CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解

CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ,但是CentOS7的yum源中默认好像是没有mysql的。

(用源码安装mysql5.7.22的 点击打开链接)

1.卸载 先停掉mysql进程 没有安装过的可以直接跳过

pkill -9 mysqld

在这里插入图片描述

rpm -qa|grep -i mysql

在这里插入图片描述
用命令

yum -y remove
yum -y remove mysql-community-client-5.6.38-2.el7.x86_64

卸载不掉的用

rpm -ev 
依次卸载 直到没有

在这里插入图片描述
2.下载mysql的repo源 这个安装的mysql5.7.20 纠正一下,这源下载的是最新的版本

cd /usr/local/src/
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm 
rpm -ivh mysql57-community-release-el7-8.noarch.rpm 
yum -y install mysql-server

(也可以指定安装目录 yum --installroot=/usr/local/mysql --releasever=/ -y install mysql-server )我没试,这样装环境变量配置都不用你管,装上直接启动就行。安装路径是默认的。
在这里插入图片描述
一路 y
在这里插入图片描述
根据步骤安装就可以了,

默认配置文件路径:

配置文件:/etc/my.cnf

日志文件:/var/log/var/log/mysqld.log

服务启动脚本:/usr/lib/systemd/system/mysqld.service

socket文件:/var/run/mysqld/mysqld.pid

配置 my.cnf

vim /etc/my.cnf

 1. [mysqld]
 2. #
 3. # Remove leading # and setto the amount of RAM for the most important data
 4. #cachein MySQL. Startat70% of total RAM for dedicated server, else10%.
 5. # innodb_buffer_pool_size = 128M
 6. #
 7. # Remove leading # to turn on a very important data integrity option: logging
 8. #changes to the binarylogbetween backups.
 9. #log_bin
 10. #
 11. # Remove leading # toset options mainly useful for reporting servers.
 12. # The serverdefaultsare faster for transactions andfast SELECTs.
 13. # Adjust sizesas needed, experiment to find the optimal values.
14. # join_buffer_size = 128M
 15. # sort_buffer_size = 2M
 16. # read_rnd_buffer_size = 2M 
 17. datadir=/var/lib/mysql 
 18. socket=/var/lib/mysql/mysql.sock 
 19. server_id = 1 
 20. expire_logs_days = 3
 21. # Disabling symbolic-links is recommended to prevent assorted security risks 
 22. symbolic-links=0 
 23. log-error=/var/log/mysqld.log
 24. pid-file=/var/run/mysqld/mysqld.pid

不过安装完成后,密码为随机密码,需要重置密码。

4. 启动mysql服务

service mysqld restart

重置密码

mysql -u root
mysql -u root -p
grep "password" /var/log/mysqld.log 

在这里插入图片描述
可以看到 输入 mysql -u root -p 密码 进入 第一次登陆 ,需要重置密码 要不什么也不能操作
在这里插入图片描述
接下来重置密码:5.7.20 为了安全密码 必须包含 数字字母符号

去除安全密码机制:

	{
		set global validate_password_policy=0;

		set global validate_password_length=1;
		//设置密码
		set password for root@localhost = password('123'); 
}

踩过的坑啊,设置了好几次。还有这ip不能是% 不知道为什么 反正第一次设置成%没成功 登上去之后再改就可以改了

把密码改简单的方法 http://blog.csdn.net/z13615480737/article/details/78907697

alter user ‘root’@‘localhost’ identified by ‘Root!!2018’;

 最后记得刷新权限;

 flush privileges 

也可以 直接再添加新用户     

CREATE USER ‘root‘@‘%‘ IDENTIFIED BY ‘您的密码‘;

grant all on *.* to 'root001'@'%' identified by 'Root@@'  with grant option;

增加root用户指定可以任意IP登录,如果想限制只能让指定IP登录请把%替换成IP地址

问题:如果发现找不到密码!!!!!

解决:只能通过忘记密码的方式修改密码!!! 在安装的过程中发现找不到密码???折腾了好长时间 通过修改密码找回之后发现、原来之前安装的数据库在了,就没有生产新的数据库!!用的还是之前的配置。

2.看mysql启动了没?初始化数据库了没? 一般直接启动 数据库 就可以 用grep “password” /var/log/mysqld.log 看到随机密码了

修改MySQL的登录设置:

#vi /etc/my.cnf

在[mysqld]的段中加上一句:skip-grant-tables 保存并且退出vi。

重新启动mysqld

重新启动mysqld

#/etc/init.d/mysqld restart ( service mysqld restart )

use mysql 

update user set password=password("12345") where user="root";

mysql 5.7的数据库没有了password字段 用的是authentication_string字段

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

flush privileges;

修改密码之后在改回来

授权远程连接
使用mysql数据库(真正的数据库,而非数据库软件),将所有数据库的所有表(.)的所有权限(all privileges),授予通过任何ip(%)访问的root用户,密码为123456,最后刷新(flush privileges)即可。

use mysql

grant all privileges on *.* to 'root'@'%' identified by '123456';

flush privileges;

然后使用navicat进行远程云端数据库的连接

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值