• Linux安装MySQL(超详细)


    1 查看是否已经安装 Mysql

    rpm -qa | grep mysql

    我之前装过一次!

    如果你查看出来有东西,可以使用下面命令将其删除

    rpm -e 文件名

    2 下载官方 Mysql 包

    wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

    如果安装有提示:Cannot write to ‘mysql57-community-release-el7-10.noarch.rpm’ (No such file or directory),那就是权限不够

    可以输入 su root 来解决,然后重新下载。

    3 安装MySQL包

    yum -y install mysql57-community-release-el7-10.noarch.rpm

    4 安装 MySQL

    yum -y install mysql-community-server

    如果执行命令过程中提示:Unable to find a match: mysql-community-server

    则可以通过命令解决

    yum module disable mysql

    5启动 Mysql 服务

    systemctl start mysqld.service

    如果没有报错,进入第六步,

    如果执行报错,多半是没有权限,执行下面语句赋予权限,然后重试

    chown mysql:mysql -R /var/lib/mysql

    6 查看 Mysql 运行状态

    service mysqld status

    看见这个绿色就表示启动成功了.

    7 查看初始密码(红色部分为初始密码)

    grep ‘password’ /var/log/mysqld.log

    如果能正常查看到,则OK;如果查看不到,则表示没有密码。

    8 进入数据库

    mysql -u root -p

    输入命令后,点击回车,会让你输入密码,然后输入刚刚的初始密码(输密码的时候不可见),当然支持粘贴,你可以复制初始密码后,然后粘贴。如果没有密码,直接回车即可。

    注: 如果显示数据库无法访问

    修改MySql配置文件my.cnf,新增skip-grant-tables

    find / -name my.cnf

    修改文件之前记得先关闭mysql服务

    service mysqld stop

    通过 vi 指令进入文件

    新增skip-grant-tables ,添加skip-grant-tables,这样mysql可以免密登录。

    重启服务

    service mysqld start

    再次连接MySql,重置密码

    任意密码就可以进入了

    mysql -u root -p

    通过 show databases; 注意带 ; 号

    show databases;

    切换到mysql数据库

    重置密码(为 root )

    update user set authentication_string=password(‘root’) where user=‘root’;

    修改配置文件my.cnf,删除skip-grant-tables,重启,再登录

    删除skip-grant-tables

    重启服务

    service mysqld start

    根据指令进入MySQL数据库

    mysql -uroot -p

    再次使用新密码登录即可至此!Linux 下 Mysql 安装到使用讲解完成!

    【温馨提示】

    如果本地访问Linux数据库失败,则记得看下下面三个配置是否OK。

    (1)服务器的防火墙mysql端口3306是否开放

    查看防火墙是否已开放3306端口
    firewall-cmd --query-port=3306/tcp
     
    设置3306端口为永久开放
    firewall-cmd --add-port=3306/tcp --permanent
     
    查看firewalld状态,发现当前是dead状态,即防火墙未开启
    systemctl status firewalld
     
    关闭防火墙
    systemctl stop firewalld
     
    重启防火墙(设置了新的端口记得先关闭,再重启)
    systemctl status firewalld
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    (2)如果是阿里云ECS,记得查看云安全组规则是否开放了3306端口,如果没有,记得加上

    (3)如果链接提示如下,则是没有允许远程登录

    解决办法:

    登录服务器mysql数据库

    执行 use mysql;
    执行 update user set host = '%' where user = 'root';
    执行 FLUSH PRIVILEGES;
    
    • 1
    • 2
    • 3

    制作不易,请大佬们点点赞

    先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

  • 相关阅读:
    【Git进阶】基于文件(夹)拆分大PR
    图解 | 这就是网络
    SpringBoot核心注解
    高压电缆护层接地环流及温度在线监测系统
    【深度学习】实现基于MNIST数据集的TensorFlow/Keras深度学习案例
    分库分表实战(3):幸福的烦恼 — 流量大爆发啦!
    canal
    k8s入门之Service(六)
    新学期,新FLAG | 从心出发
    ETH POS 2.0 Staking 测试网质押流程
  • 原文地址:https://blog.csdn.net/m0_67401835/article/details/126061523