centos7彻底卸载mysql 并安装mysql5.7【rpm安装】 并修改密码 设置连接

本文详细介绍了如何在CentOS7系统中彻底卸载已安装的MySQL,然后通过rpm包安装MySQL5.7,包括安装依赖、配置权限、初始化数据库以及修改密码和设置远程连接的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查看是否有安装的mysql

rpm -qa | grep -i mysql

卸载mysql安装包
yum remove mysql mysql-server mysql-libs compat-mysql51
yum remove mysql-community-release
rpm -e --nodeps mysql-community-libs-5.7.22-1.el7.x86_64
rpm -e –nodeps mysql57-community-release-el7-11.noarch

删除残留的mysql目录或文件:
whereis mysql
find / -name mysql
rm -rf ***
删干净

一、【rpm 包安装】安装mysql 57

wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm // 下载mysql rpm包
rpm -ivh mysql57-community-release-el7-11.noarch.rpm // 安装yum源

正式安装
yum install mysql-community-server

启动
systemctl start mysqld
查看状态
systemctl status mysqld
重启
systemctl restart mysqld

设置开机自启
systemctl enable mysqld
systemctl daemon-reload

二、【源码安装】 mysql5.7

①安装mysql5.7

安装依赖环境

yum -y install make gcc-c++ cmake bison-devel ncurses-devel

下载mysql5.7

wget et http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-boost-5.7.24.tar.gz

编译安装:

cmake
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/usr/local/mysql/data
-DSYSCONFDIR=/usr/local/mysql/etc
-DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1
-DWITH_READLINE=1
-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock
-DMYSQL_TCP_PORT=3306
-DENABLED_LOCAL_INFILE=1
-DWITH_PARTITION_STORAGE_ENGINE=1
-DEXTRA_CHARSETS=all
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DDOWNLOAD_BOOST=1 -DWITH_BOOST=./boost
make && make install

②配置mysql5.7

查看是否有mysql用户及用户组

cat /etc/passwd #查看用户列表
cat /etc/group #查看用户组列表

没有就创建

groupadd mysql
useradd -g mysql mysql

修改/usr/local/mysql权限

chown -R mysql:mysql /usr/local/mysql
mysql5.7.18以后不再提供默认的mysql配置文件,这里我们再网上找了一个简单的配置,
vi /etc/my.cnf 然后写入一下内容

[client]
port = 3306
default-character-set=utf8

[mysqld]
//一般配置选项
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character-set-server=utf8
default_storage_engine = InnoDB

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
//配置服务脚本

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on #添加到开机启动项

③初始化mysql5.7

1.执行初始化脚本(初始化成功最后一行会生成mysql root密码注意记录下来,或者也可以用./mysqld --initialize–insecure初始化一个空密码的账号)
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

2019-04-11T14:34:15.922856Z 1 [Note] A temporary password is generated for root@localhost: /rTmud(Th5Yy

2.启动mysql
service mysql start #启动mysql
将mysql执行文件加到path目录,vi /etc/profile

PATH=/usr/local/mysql/bin:$PATH
export PATH

然后执行source /etc/profile

2.防火墙开放3306端口
Firewalld中添加端口方法如下:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

三、登录mysql【修改密码及远程连接】:

mysql -u root -p

grep ‘temporary password’ /var/log/mysqld.log //查询默认初始密码

①修改密码 【有的也许不需要修改参数,可以直接alter】

1.修改validate_password_policy参数的值
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)

2.validate_password_length(密码长度)参数默认为8,我们修改为1
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)

3.完成之后再次执行修改密码语句即可成功
mysql> alter user ‘root’@‘localhost’ identified by ‘123456’;
Query OK, 0 rows affected (0.00 sec)

②root用户远程登录

mysql>use mysql;

mysql>select ‘host’ from user where user=‘root’;

mysql>update user set host = ‘%’ where user =‘root’;

mysql>flush privileges;

mysql>select ‘host’ from user where user=‘root’;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值