安装之前需要确认机器上是否安装过mysql如果已经安装过.需要清理掉.

1.检查是否已经安装过mysql :  

rpm -qa | grep mysql

如果环境中有遗留mysql则执行删除命令:`rpm -e --nodeps mysql-xxxxxxxxx`
2.查询遗留的mysql设置或命令,执行两条命令

whereis mysql
find / -name mysql

如通过上述两条命令发现有遗留,则执行清除命令,将所有查到的mysql都删除 :

rm -rf  xxx xxx

3、检查mysql用户组和用户是否存在,如果没有,则创建,有的话可以不用添加.
查看是否存在mysql用户的命令:

cat /etc/group | grep mysql
cat /etc/passwd |grep mysql

执行命令出现如下内容说明用户组和用户已存在:

就不需要执行添加mysql用户命令.

mysql安装是说指定的账户已存在 安装mysql指定的用户已存在_数据库

增加 mysql 用户的命令:

groupadd mysql
useradd -r -g mysql mysql

正式开始安装

1.从官网下载用于Linux的Mysql安装包.两种方法
第一:如果你的linux 系统有外网,则直接通过命令下载到linux系统上:

wget https://dev.mysql.com/get/Downloads/MySQL-8.0.20/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

第二:通过浏览器打开网页,按照图片的执行,点击"DownLoad"
官网地址:https://downloads.mysql.com/archives/community/

mysql安装是说指定的账户已存在 安装mysql指定的用户已存在_初始化_02


3、开始解压、安装

  1.  进入 cd /usr/local 目录下.然后上传压缩包
  2. 解压 tar -xvf  mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz 
  3. 对解压出来的文件重命名 mv mysql-8.0.20-linux-glibc2.12-x86_64  mysql
  4. 进入 /usr/local/mysql 目录创建文件夹 
#mysql数据存储目录
mkdir data
#mysql日志存放目录
mkdir log
  1. 将指定文件的拥有者改为指定的用户或组
chown -R mysql:mysql ./
  1. 进入/var/lib目录  cd /var/lib
  2. 创建mysql目录 mkdir mysql
  3. 修改权限 chmod 777 mysql
  4. 修改配置文件 vim /etc/my.cnf 内容如下
[mysql]
#mysql客户端默认字符集
default-character-set=utf8

[mysqld]
#mysql忽略大小写
lower-case-table-names=1
#设置3306端口
port = 3306
socket=/var/lib/mysql/mysql.sock

#设置mysql的安装目录 
basedir=/usr/local/mysql

#设置mysql数据库的数据的存放目录 
datadir=/usr/local/mysql/data

#允许最大连接数 
max_connections=200

#最大等待时间
wait_timeout=3153600

#服务端使用的字符集
character-set-server=utf8

#创建新表时将使用的默认存储引擎 
default-storage-engine = InnoDB

#日志

#允许做大数据包
max_allowed_packet=16M

[client]
port=3306
socket=/var/lib/mysql/mysql.sock
  1. 在cd /usr/local/mysql
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
  1. 如果初始化失败,报错信息如下.
./bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory

出现上面的错误信息是缺少numactl,执行下面命令可以解决 

yum -y install numactl

           再次执行初始化mysql命令

./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

mysql安装是说指定的账户已存在 安装mysql指定的用户已存在_mysql_03

 初始化mysql密码如上图,记住它!!!

设置开机自启动

  1. 复制脚本资源到启动目录,在/usr/local/mysql 目录下执行命令
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
  1. 增加mysql服务控制脚本权限
chmod +x /etc/rc.d/init.d/mysqld
  1. 将 mysqld 服务加入到系统服务
chkconfig --add mysqld
  1. 检查mysqld服务是否已经生效
chkconfig --list mysqld

成功出现如下效果

mysql安装是说指定的账户已存在 安装mysql指定的用户已存在_mysql安装是说指定的账户已存在_04

  1. 启动mysql
service mysqld start

mysql安装是说指定的账户已存在 安装mysql指定的用户已存在_mysql_05

  1. 登录mysql  mysql -uroot -p密码
  2. 修改初始化密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
  1. 如果有开启防火墙,就要开启防火墙端口 3306 使其可远程访问,没有请忽略
firewall-cmd --zone=public --add-port=3306/tcp --permanent;
firewall-cmd --reload;
  1. 开启数据库远程连接
CREATE USER 'root'@'%' IDENTIFIED BY '密码';  
GRANT ALL ON *.* TO 'root'@'%'; 
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
FLUSH PRIVILEGES;
  1. 使用navicat连接你的数据库

大功告成!!!!!