15.linux环境下 mysql安装、卸载、远程访问配置、相关文件路径(保姆级教学,亲自踩坑无数)

前言

由于刚开始不懂,装过mysql,但是后来手贱,改过 mysql数据库实例中的 user表。这张表里记录了用户信息的各种权限(比如查看、更新、插入权限等)。后面想用下面这个命令改root密码,报错 mysql.user这张表已经损坏(因为自己啥都不懂,给这张表加了一个字段“password”,相当于破坏了原始表的结构)。
捣鼓了半天很难受,一了百了就想重装了再说。

mysqladmin -uroot -p '初始默认密码' password '欲设置的密码'

在这里插入图片描述

一、卸载

可能踩到的坑

刚开始卸载觉得是一件很轻松的事,把mysql相关的包都照着,全部rpm -e了不就完事了吗?
然而,照做了以后,发现重装以后的库里面竟然有删之前的数据库实例。并且查看了日志也发现,删之前的日志也存在。并且一样卡在报错"mysql.user is wrong"。经过分析,就是因为删的时候没删干净,库也好,日志也好,都没删干净,老数据直接“过继”给了新装的mysql,所以卸载一定要删干净!!

mysql要用到的各种目录

vi /etc/my.cnf  //主配置文件
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql //看这儿老铁,数据放在这儿
socket=/var/lib/mysql/mysql.sock/*老铁这里也有,我也搞不懂socket是干啥的,但是肯定有用好吧*/

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log //老铁看这儿,错误日志
pid-file=/var/run/mysqld/mysqld.pid//

虽然有两个点搞不清楚,但是我们清楚,mysql用到了如下文件或者目录

/var/lib/mysql  //目录
log-error=/var/log/mysqld.log //文件
/etc/my.cnf  //主配置文件

所以挨着删完好吧,老铁。

rm -rf /var/lib/mysql/*                                                               /*///                                    
rm -rf log-error=/var/log/mysqld.log  
rm -rf /etc/my.cnf 

停服务

systemctl stop mysqld

删除

1.老铁先看看有些啥(有些老铁可能被mariadb影响,也一起删了)

rpm -qa | grep mysql      //  rpm -qa | grep  mariadb 

在这里插入图片描述
2.把这些都删除了

rpm -e 名字1 --nodeps   //e参数代表删,--nodeps参数代表不分析依赖关系硬删
rpm -e 名字2 --nodeps
rpm -e 名字3 --nodeps
rpm -e 名字4 --nodeps

3.检查看一下,有没有漏网之鱼

rpm -qa | grep mysql      //  rpm -qa | grep  mariadb 

二、安装

由于yum install -y mysqld 要下200个小时,就很吃力,这里笔者采用的是下rpm包下下来采用rpm安装。

链接: 中科大开源镜像网站
按着图片搜索+点一哈
在这里插入图片描述我在这下的mysql5.7,一定要注意老铁,要下4个包,common,client,server,libs
在这里插入图片描述
这里我下的是5.7.33版本,一定要注意两个点,第一个是包的版本肯定要一致,其二是el7代表是centos7代或者红帽7,搞清楚自己的操作系统再下啊老铁!!!

mysql-community-client-5.7.33-1.el7.x86_64.rpm
mysql-community-common-5.7.33-1.el7.x86_64.rpm
mysql-community-libs-5.7.33-1.el7.x86_64.rpm
mysql-community-server-5.7.33-1.el7.x86_64.rpm

安装rpm包

server是主程序,client是客户端界面,common和libs是两个依赖的包
安装顺序是 common libs client server

rpm -ivh mysql-community-common-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.33-1.el7.x86_64.rpm

启服务

systemctl start 

查询默认密码

grep 'password' /var/log/mysqld.log

如图就是初始默认的密码
在这里插入图片描述

更改默认密码

mysqladmin -uroot -p'初始系统给的密码' password '欲改成的新密码'

出现如下密码,则已经实现mysql在本地的安装
在这里插入图片描述

三*、远程访问配置

控制各种权限的表在 ‘mysql’中的user表中。初始的图中画圈位置是“localhost”,改成%即可远程访问
在这里插入图片描述
具体做法进入mysql

mysql> use mysql; //选择mysql这个库
mysql> update set host='%' where user='root' ;
mysql>flush privileges ;//刷新生效

就可以了
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值