linux卸载及安装mysql 5.7以上

删除:

1.rpm -qa|grep -i mysql     查看安装的mysql

2./usr/local/mysql/support-files/mysql.server stop  停止mysql服务

3.whereis mysql  收集mysql文件夹信息   或者   find / -name mysql(推荐)

4.rpm -ev mysql-*****  卸载删除mysql组件

5.再 rm -rf 删除mysql对应文件夹

6.删除mysql用户名和用户组

more /etc/passwd | grep mysql
more /etc/shadow | grep mysql
more /etc/group | grep mysql
userdel mysql
groupdel mysql

7.rpm -qa | grep -i mysql再确认是否删除
8.配置文件一般有 /etc/my.cnf /var/log/mysqld.log /var/run/mysqld/ 根据具体情况删除

安装:

下载mysql文件压缩包 放到、/usr/local/
cd /usr/local/
tar -zxvf mysql**** 解压
mv mysql**** mysql 重命名
groupadd mysql 创建用户组
useradd -r -g mysql mysql 创建用户添加进用户组 -r标识系统内部用户
chown -R mysql mysql 给用户加mysql文件权限
chgrp -R mysql mysql 给用户组mysql文件权限
2.创建配置文件,添加配置

vim /etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
#skip-grant-tables
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
lower_case_table_names
= 1 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION max_connections=5000 default-time_zone = '+8:00'

3.初始化数据库

yum install libaio  先安装这个必须的

添加日志文件

vim /var/log/mysqld.log   保存
再赋权
chmod 777 mysqld.log
chown mysql:mysql mysqld.log

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US
4.查看初始密码
cat /var/log/mysqld.log
5./usr/local/mysql/support-files/mysql.server start 启动mysql服务
6.修改初始密码
cd /var/run/
mkdir mysqld
chmod 777 mysqld
cd mysqld
vim mysqld.pid

chmod 777 mysqld.pid
chown mysql:mysql mysqld.pid 

 /usr/local/mysql/support-files/mysql.server start
 /usr/local/mysql/bin/mysql -uroot -p初始密码

注意:我登录的时候会报错,不知道什么原因,(可能复制之后的有编码问题)

解决:(修改root密码 *初始密码不能用的情况)

  1.在/etc/my.cnf 中添加 skip-grant-tables
  2.重启服务
  3.更改root密码: ALTER USER 'root'@'localhost'IDENTIFIED BY 'newpassword'
  4.退出并删除
skip-grant-tables
  5.使用 /usr/local/mysql/bin/mysql -uroot -p刚修改的密码,直接回车进入

备注:远程连接出现 1130错误:不允许远程连接
  进入mysql数据库,执行:update user set host = '%' where user ='root'; 允许远程连接。
      flush privileges; 刷新数据库。
 
原文地址:https://www.cnblogs.com/xiaoheis/p/8656371.html