我是靠谱客的博主 直率小懒猪,最近开发中收集的这篇文章主要介绍CentOS7中安装MySQL(VM虚拟机),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

CentOS7中安装MySql(VM虚拟机)

- MySQL rpm包准备
mysql的历史版本均可下载:
https://downloads.mysql.com/archives/community/
本次以学习下载5.7.21版本(mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar)为进行练习,下载好传至linux中。在这里插入图片描述

- CentOS7 环境准备

删除centos7自带的数据库mariadb
先看一下系统中是否存在mariadb,用 rpm -qa | grep mariadb 命令查看,如存在则需要进行卸载 rpm -e --nodeps mariadb-libs

- 安装

  1. 解包
    tar -xvf mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar
  2. rpm命令安装
    rpm -ivh mysql-community-common-5.7.21-1.el7.x86_64.rpm
    rpm -ivh mysql-community-libs-5.7.21-1.el7.x86_64.rpm
    rpm -ivh mysql-community-devel-5.7.21-1.el7.x86_64.rpm
    rpm -ivh mysql-community-libs-compat-5.7.21-1.el7.x86_64.rpm
    rpm -ivh mysql-community-client-5.7.21-1.el7.x86_64.rpm
    rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm

    注意:安装最后一个server时出错的,试下下面的命令:
    rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm --force --nodeps
  3. 修改配置文件跳过密码登录
    关闭mysql服务:service mysqld stop
    打开配置文件:vim /etc/my.cnf
    在配置文件中添加 skip-grant-tables 这句话就可以空密码登录mysql
    在这里插入图片描述
    开启mysql服务:service mysqld start
  4. 设置root用户的密码
    登录:mysql -u root -p
    出现输入密码提示时直接回车
    mysql> use mysql;
    设置mysql密码:mysql> set password for root@localhost = password(‘123456’);
    如果提示下面的错误:
    ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
    mysql> flush privileges; #更新权限
    Query OK, 0 rows affected (0.10 sec)
    mysql> SET PASSWORD FOR ‘root’@‘localhost’ = PASSWORD(‘newpass’);
    【此处失败的话就用以下两句命令
    mysql>update user set authentication_string = password(‘新密码’),password_last_changed=now() where user=‘root’;
    mysql> GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;
    mysql>flush privileges; #更新权限
    mysql>quit; #退出
    service mysqld stop # 停止mysql服务, 恢复mysql配置
    vim /etc/my.cnf #修改配置文件,注释之前添加的代码
    在这里插入图片描述
    service mysqld start # 启动mysql服务
    mysql -u root -p # 输入新密码登录
    设置mysql开机自启:systemctl enable mysqld(退出mysql进行设置)

- 连接navicat
1.设置root用户连接的ip的权限
mysql>flush privileges; #更新权限
2.设置root用户可以在任意ip(% 通配符),或者指定ip下进行登陆
mysql> SET PASSWORD FOR ‘root’@’%’ = PASSWORD(‘123456’);
在这里插入图片描述
3.然后就可以在局域网内的机器上安装navicat进行连接了
在这里插入图片描述
这中间可能还会报一些错,可能是linux防火墙未开放相应的端口,可以使用以下命令开启:
[root@localhost logs]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
重新载入一下
[root@localhost logs]#firewall-cmd --reload

常见问题:
You must reset your password using ALTER USER statement before executing this statement(在执行此语句之前,必须使用ALTER USER语句重置密码)
Your password does not satisfy the current policy requirements(您的密码不满足当前的策略要求)
SET PASSWORD = PASSWORD(‘new password’);
ALTER USER ‘root’@‘localhost’ PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

解决Java程序向mysql数据库插入中文乱码问题的多种方式
https://blog.csdn.net/qq_27760433/article/details/76121783

最后

以上就是直率小懒猪为你收集整理的CentOS7中安装MySQL(VM虚拟机)的全部内容,希望文章能够帮你解决CentOS7中安装MySQL(VM虚拟机)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部