卸载、安装、配置快捷mysql

卸载mysql

1、筛选过滤出mysql相关组件
复制代码
rpm -qa | grep mysql
2、关闭MySQL服务
复制代码
systemctl stop mysql.service 
3、卸载对应组件命令如下:
复制代码
rpm -ev --nodeps [显示的组件名称] 
4、查找MySQL对应的所有文件夹
复制代码
find / -name mysql 

rm -rf [显示的文件夹路径] 

检查mysql是否删除干净

复制代码
whereis mysql  
5、删除mysql用户及用户组

使用命令查看指定文件夹下的mysql

复制代码
more /etc/passwd | grep mysql 
more /etc/shadow | grep mysql 
more /etc/group  | grep mysql 

使用命令删除mysql用户和用户组

复制代码
userdel mysql 
groupdel mysql

删除完成后再次检查文件夹mysql信息是否清空

安装mysql

mysql-5.7.32安装

系统默认会安装mariadb,必须卸载

复制代码
 #查看mariadb是否安装
 yum list installed | grep mariadb
 #卸载
 yum -y remove mariadb-libs.x86_64

解压缩

复制代码
tar -zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

修改文件名

复制代码
mv  mysql-5.7.32-linux-glibc2.12-x86_64  mysql-5.7.32

创建data目录

复制代码
cd /usr/local/mysql-5.7.32
mkdir data

创建用户mysql

复制代码
useradd mysql -r -s   /bin/false 

初始化数据库

复制代码
cd bin
./mysqld --initialize --datadir=/usr/local/mysql-5.7.32/data/   --basedir=/usr/local/mysql-5.7.32   --user=mysql

初始化如果报错

复制代码
yum install  libaio-devel.x86_64

记住下面的root密码,一会访问数据库会用到

在data目录下创建my.cnf文件

复制代码
vim my.cnf

复制下面内容到my.cnf文件中

复制代码
[client]
port     =3307
socket   =/usr/local/mysql-5.7.32/data/mysql.sock
default-character-set=utf8
[mysqld]
port     =3307
socket   =/usr/local/mysql-5.7.32/data/mysql.sock
datadir  =/usr/local/mysql-5.7.32/data
log-error=/usr/local/mysql-5.7.32/data/error.log
character-set-server=utf8
lower_case_table_names=1
autocommit =1

设置data目录路径

复制代码
 cd /usr/local/mysql-5.7.32/bin/
./mysql_ssl_rsa_setup --datadir=/usr/local/mysql-5.7.32/data/

为mysql用户设置mysql-5.7.32的访问权限

复制代码
 chown -R mysql.mysql /usr/local/mysql-5.7.32

后台启动mysql

复制代码
 ./mysqld_safe &

访问数据库,密码输入上面生成的密码

复制代码
 ./mysql  -uroot -p

重新设置root用户的密码,并设置远程访问

复制代码
mysql> alter  user 'root'@'localhost'  identified by  '123456';
mysql> CREATE USER 'root'@'%' IDENTIFIED BY '密码'; //root创建外部访问权限
mysql> GRANT ALL ON *.* TO 'root'@'%'; //授权
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码'; 
mysql> FLUSH PRIVILEGES;

配置环境变量

mysql -uroot -p时提示 command not found

复制代码
[root@bogon bin]# mysql -uroot -p
bash: mysql: command not found

原因:这是由于系统基于环境变量去对应路径下查找命令,如果这个命令不在这个目录下,当然会找不到命令。

解决思路

系统其他目录下执行一个命令时,系统会去环境变量目录下去查找此命令,当我们执行命令时报出找不到这个命令时则表明该环境变量下没有这个链接,我们需要做的就是映射一个链接到环境变量路径下,相当于建立一个链接文件。

复制代码
ln -s /opt/app/media/mysql-5.7.32/bin/mysql /usr/bin

建立好链接文件后,再试一下 mysql -uroot -p 就可以了

相关推荐
小白男神5 天前
MySQL进阶学习四(存储过程、游标、触发器)
mysql
这个DBA有点耶5 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G5 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备5 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远5 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
kybs19915 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
2601_962218615 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法
程序猿_极客5 天前
【免费】分享一套优质的基于SSM的校园失物招领系统的设计与实现,源码+文档+视频详解(讲解)
java·mysql·ssm·课程设计·失物招领系统
张洛闻Eren5 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
于平安5 天前
MySQL-触发器
数据库·mysql