删除mysql的步骤
方法一、
1.查看安装了mysql哪些服务
rpm -qa|grep -i mysql
2、然后逐个去卸载
卸载前关闭mysql服务
rpm -ev --nodeps mysql-community-release-el7-5.noarch
rpm -ev --nodeps mysql-community-common-5.6.38-2.el7.x86_64
rpm -ev --nodeps mysql-community-client-5.6.38-2.el7.x86_64
rpm -ev --nodeps mysql-community-libs-5.6.38-2.el7.x86_64
rpm -ev --nodeps community-server-5.6.38-2.el7.x86_64
执行完命令之后再次执行 rpm-qa|grep -i mysql 会发现已经卸载完成。
方法二、
执行命令
find / -name mysql
把查找出的目录删除
rm -rf 上面查出的文件夹
etc/my.cnf 如果存在的话手动删除,这样mysql就卸载完成了。
注:第二种方法找出来的mysql 不一定是MySQL安装服务,可能是其他文件名,删的时候要注意区分
如果有必要,删除mysql用户以及mysql用户组。
# more /etc/passwd | grep mysql
mysql:x:101:501::/home/mysql:/bin/bash
# more /etc/shadow | grep mysql
mysql:!!:16496::::::
# more /etc/group | grep mysql
mysql:x:501:
# userdel mysql
# groupdel mysql
groupdel: group mysql does not exist
#
确认MySQL是否卸载删除
# rpm -qa | grep -i mysql
安装mysql8.0.31
tar -xvf mysql-8.0.31-linux-glibc2.12-x86_64.tar -C /usr/local
mv mysql-8.0.31-linux-glibc2.12-x86_64 mysql
配置:
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
//因为用户只需要所有权不需要登录,useradd命令使用-r和-s /bin/false选项创建一个用户没有登录服务器的权限
在mysql目录下创建文件夹mysql-files:
# mkdir /usr/local/mysql/mysql-files
# chmod 750 /usr/local/mysql/mysql-files //修改mysql-files的权限
# chown -R mysql:mysql /usr/local/mysql //修改mysql目录下所有文件权属关系
初始化/usr/local/mysql/data目录:
# cd /usr/local/mysql/bin
#./mysqld --initialize --user=mysql
//*在5.7.6版本以前使用:bin/mysql_install_db --user=mysql//
【出现错误libnuma.so.1: cannot open shared】#yum install numactl -y
千万记住初始化生成的临时密码,否则又要悲催的干很多事了。。。
如果您希望服务器能够自动部署支持安全连接,使用mysql_ssl_rsa_setup实用程序来创建缺省SSL和RSA文件:
#./mysql_ssl_rsa_setup
修改 vi /usr/loacl/mysql/support-filesmysql.service
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
conf=/etc/my.cnf 改为conf=/usr/local/mysql/my.cnf
开机自启动
#vim /usr/lib/systemd/system/mysql.service
--------------------------------------------------
[Unit]
Description=mysql
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mysql/support-files/mysql.server start
#ExecReload=/usr/local/mysql/support-files/mysql.server restart
#ExecStop=/usr/local/mysql/support-files/mysql.server stop
#PrivateTmp=true
[Install]
WantedBy=multi-user.target
--------------------------------------------------
vi /usr/local/mysql/my.cnf
--------------------------------------------------
[client]
port = 3306
# 设置mysql客户端默认字符集
#删除default-character-set=utf8
default-character-set=utf8mb4
#mysql8.0后加开始
[mysql]
default-character-set=utf8mb4
#mysql8.0后加结束
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=5120
# 服务端使用的字符集默认为8比特编码的latin1字符集
#删除character-set-server=utf8
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
init_connect='SET NAMES utf8mb4'
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
--------------------------------------------------
# chmod 754 /usr/lib/systemd/system/mysql.service
#systemctl enable mysql..service
#systemctl restart mysql..service 【重启mysql】
#【运行mysql】
--------------------------
配置防火墙
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
source profile
--------------------------------
find / -name libtinfo.so*
ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
修改初始密码
mysqld -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'pwd'; //修改初始密码
create user 'test'@'%' identified by 'pwd'; //创建新用户
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;
exit;
#可以远程连接mysql了
华旅网络 |