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

上一篇安装的是5.6的但是我想安装5.7的  yum安装是最简单的 尝试过编译安装各种问题,最后就决定用yum。

(经过一段时间的学习又写了一篇用源码安装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  /**纠正一下,这源下载的是最新的版本  ****/

[root@localhost ~]# cd /usr/local/src/
   [root@localhost src]# wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm 

[root@localhost src]# rpm
-ivh mysql57-community-release-el7-8.noarch.rpm 

[root@localhost src]#  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 set to the amount of RAM for the most
    important data
  4. # cache in MySQL. Start at 70% of total RAM for dedicated
    server, else 10%.
  5. # innodb_buffer_pool_size = 128M
  6. #
  7. # Remove leading # to turn on a very important data integrity
    option: logging
  8. # changes to the binary log between backups.
  9. # log_bin
  10. #
  11. # Remove leading # to set options mainly useful for reporting
    servers.
  12. # The server defaults are faster for transactions and fast
    SELECTs.
  13. # Adjust sizes as 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

重置密码

    [root@localhost
~]# grep "password" /var/log/mysqld.log    

可以看到  输入 mysql -u
root -p   密码
进入      第一次登陆 ,需要重置密码 要不什么也不能操作

接下来重置密码:5.7.20
为了安全密码           必须包含 数字字母符号

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

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

alter user
'root'@'localhost' identified by 'Root!!2018';

最后记得刷新权限;

flush privileges

也可以 直接再添加新用户

1. iptables放开3306端口

/sbin/iptables -I INPUT -p tcp --dport 3306
-j ACCEPT

/etc/rc.d/init.d/iptables save

2.本地登录mysql,在'mysql'这个数据库里执行GRANT
ALL ON *.* to user@'IP' IDENTIFIED BY 'password';  其中,user表示用户,对我来说就是root,IP表示登录机器的ip,由于我的电脑是DHCP,就直接写了个通配符%.
password该用户对应的密码.

所以我的命令就是grant all privileges on *.* to 'root'@'%' identified by '*****' with
grant option;

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

3.执行以下这个,FLUSH
PRIVILEGES; 不然可能会有问题.

4.重启mysql, service
mysqld restart.

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

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

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;
修改密码之后在改回来

CentOS 7 下使用yum安装MySQL5.7.20的更多相关文章

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

    CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ,但是CentOS7的yum源中默认好像是没有mysql的. 上一篇安装的是5.6的但是我想安装5.7的  yum安装是最简单 ...

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

      原文地址:https://blog.csdn.net/z13615480737/article/details/78906598  CentOS7默认数据库是mariadb, 但是 好多用的都是m ...

  3. CentOS 7.4下使用yum安装MySQL5.7.20 最简单的

    CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ,但是CentOS7的yum源中默认好像是没有mysql的. 上一篇安装的是5.6的但是我想安装5.7的  yum安装是最简单 ...

  4. CentOS 7.4下使用yum安装MySQL5.7.20 最简单的 (引用)

    引用 https://blog.csdn.net/z13615480737/article/details/78906598 CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ...

  5. CentOS 7下使用yum安装MySQL5.7

    1.卸载 1.1先停掉mysql进程,没有安装过的可以直接跳过 pkill - mysqld rpm -qa|grep -i mysql 1.2用命令 yum -y remove -.el7.x86_ ...

  6. CentOS 6 下RPM方式安装MySQL5.6

    CentOS 6 下RPM方式安装MySQL5.6 1. 下载Linux对应的RPM包,如:CentOS6.7_64对应的RPM包,如下:[root@mysql ~]# ll总用量 113808-rw ...

  7. [转]阿里云CentOS 7.1使用yum安装MySql5.6.24

    阿里云CentOS 7.1使用yum安装MySql5.6.24 作者:vfhky | 时间:2015-06-25 09:43 | 分类:web 在前面两篇文章<2015博客升级记(四):Cent ...

  8. centOS Linux下用yum安装mysql

    centOS Linux下用yum安装mysql      第一篇:安装和配置MySQL   第一步:安装MySQL   [root@192 local]# yum -y install mysql- ...

  9. CentOS 系统下使用 yum 安装 Redis

    本文主要介绍在 CentOS 7 系统下使用 yum 安装 Redis 的过程. 更改 yum 源 将 Centos 的 yum 源更换为国内的阿里云源. 首先备份你的原镜像文件,保证出错后可以恢复: ...

随机推荐

  1. Python类中的装饰器在当前类中的声明与调用

    [本文出自天外归云的博客园] 我的Python环境:3.7 在Python类里声明一个装饰器,并在这个类里调用这个装饰器.代码如下: class Test(): xx = False def __in ...

  2. tun/tap设备_虚拟网卡

    tun/tap 驱动程序实现了虚拟网卡的功能,tun表示虚拟的是点对点设备,tap表示虚拟的是以太网设备,这两种设备针对网络包实施不同的封装.利用tun/tap 驱动,可以将tcp/ip协议栈处理好的 ...

  3. HIVE metastore Duplicate key name 'PCS_STATS_IDX' (state=42000,code=1061)

    HDP 版本:2.4.0.0-169. 解决:将hive 所在 节点上的/usr/hdp/2.4.0.0-169/hive/script/metastore/upgrade/msql/hive-sch ...

  4. halcon电路断裂检测

    read_image (Image, 'pcb')dev_close_window ()get_image_size (Image, Width, Height)dev_open_window (0, ...

  5. HTTP缓存及其合理使用

    以前以为HTTP缓存是个简单的事,项目中遇到后才发觉关于缓存实践有挺深的学问. from几篇文章详见: 使用 HTTP 缓存:Etag, Last-Modified 与 Cache-Control 合 ...

  6. SortedSet的实现类是TreeSet:它的作用是字为添加到TreeSet中的元素排序。

      SortedSet可自动为元素排序. SortedSet的实现类是TreeSet:它的作用是字为添加到TreeSet中的元素排序.   练习:自定义类用TreeSet排序. 与HashSet不同, ...

  7. 又一次认识java(七) ---- final keyword

    你总以为你会了,事实上你仅仅是一知半解. final 关键字概览 final关键字可用于声明属性.方法.參数和类,分别表示属性不可变.方法不可覆盖.參数不可变和类不能够继承. 我们来分别看看它的使用方 ...

  8. Manual Validation with Data Annotations C#对实体类进行手动验证

    Several people have asked me about using data annotations for validation outside of a UI framework, ...

  9. Pointer-network的tensorflow实现-1

    pointer-network是最近seq2seq比较火的一个分支,在基于深度学习的阅读理解,摘要系统中都被广泛应用. 感兴趣的可以阅读原paper 推荐阅读 https://medium.com/@ ...

  10. highcharts.js的时间轴折线图

    工作中正好用到. 鼠标按住左键 左右移动可以试试 <!DOCTYPE> <html lang='en'> <head> <title>4-Highcha ...