CentOS 8 Java环境部署之MySQL 8 部署

MySQL 8 部署

  • 链接:[Linux服务器Java编程环境部署大纲指南](https://blog.csdn.net/LvJzzZ/article/details/106459712)
    • 一、检查系统是否已自带Mariadb,有则卸载
    • 二、下载MySQL安装包
    • 三、上传并解压MySQL安装包
    • 四、用户配置
    • 五、配置my.cnf文件
    • 六、初始化MySQL并启动MySQL服务
    • 七、配置启动目录
    • 八、设置系统服务
    • 九、启动MySQL
    • 十、配置环境变量
    • 十一、登录MySQL
    • 十二、设置远程登录
    • 十三、Navicat测试

链接:Linux服务器Java编程环境部署大纲指南

一、检查系统是否已自带Mariadb,有则卸载

  • CentOS 8 默认不安装
  • 检查命令
rpm -qa | grep mariadb    //检查是否存在mariadb
  • 有则利用命令卸载
yum -y remove +对应安装包    //卸载命令

二、下载MySQL安装包

  • 安装方式:源码安装(本次使用)
  • MySQL官网链接: https://dev.mysql.com/downloads/mysql/
    CentOS 8 Java环境部署之MySQL 8 部署_第1张图片
    CentOS 8 Java环境部署之MySQL 8 部署_第2张图片

三、上传并解压MySQL安装包

  • 将MySQL压缩包上传至CentOS
    从Windows将软件包上传至Linux一共有3种方式:
    • FTP、SSH、第三方软件(WinSCP、Xftp)
      这里选择WinSCP上传
      CentOS 8 Java环境部署之MySQL 8 部署_第3张图片
      CentOS 8 Java环境部署之MySQL 8 部署_第4张图片
      CentOS 8 Java环境部署之MySQL 8 部署_第5张图片
  • ls命令检查(不放心者使用)
    CentOS 8 Java环境部署之MySQL 8 部署_第6张图片
  • root模式(后续均在root模式下完成操作!)下将MySQL压缩包解压到/usr/local/目录,并将文件重命名为mysql
    说明:查看自己压缩包后缀是什么,tar.xz或是tar.gz等等
    tar.xz使用tar -xvJf解压缩,tar.gz使用tar -zxvf解压缩
su root    //切换至root模式(后续均在root模式下完成操作!)
tar -xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz -C /usr/local/    //解压
mv mysql-8.0.20-linux-glibc2.12-x86_64 mysql    //重命名文件

CentOS 8 Java环境部署之MySQL 8 部署_第7张图片
CentOS 8 Java环境部署之MySQL 8 部署_第8张图片
CentOS 8 Java环境部署之MySQL 8 部署_第9张图片

四、用户配置

groupadd mysql    //创建mysql用户组
cat /etc/group    //查看mysql用户组是否配置,组均在/etc/group下
useradd -g mysql mysql    //为添加的mysql用户指定相应的mysql用户组
id mysql    //查看用户信息
mkdir /usr/local/mysql/data    //新建data目录
chown -R mysql:mysql ./    //在mysql目录下将所有文件与子目录的拥有者皆设为mysql,群体的使用者mysql

CentOS 8 Java环境部署之MySQL 8 部署_第10张图片
CentOS 8 Java环境部署之MySQL 8 部署_第11张图片
CentOS 8 Java环境部署之MySQL 8 部署_第12张图片
CentOS 8 Java环境部署之MySQL 8 部署_第13张图片

五、配置my.cnf文件

  • 在/etc目录下新建my.cnf文件
touch /etc/my.cnf    //touch命令新建my.cnf文件
  • 输入vim编辑命令,在my.cnf文件中写入以下命令
vim /etc/my.cnf    //进入编辑模式
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
skip-name-resolve
#设置3306端⼝
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装⽬录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放⽬录
datadir=/usr/local/mysql/data
# 允许最⼤连接数
max_connections=200
# 服务端使⽤的字符集默认为8⽐特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使⽤的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
  • 检查my.cnf配置(不放心者使用)
cat /etc/my.cnf    //查看my.cnf配置
  • 创建 /var/lib/mysql ⽬录,并修改权限
mkdir /var/lib/mysql    //mkdir命令创建/var/lib/mysql目录
chmod 777 /var/lib/mysql    //修改权限为777(可读可写可执行)r=4,w=2,x=1

CentOS 8 Java环境部署之MySQL 8 部署_第14张图片
CentOS 8 Java环境部署之MySQL 8 部署_第15张图片
CentOS 8 Java环境部署之MySQL 8 部署_第16张图片
CentOS 8 Java环境部署之MySQL 8 部署_第17张图片
CentOS 8 Java环境部署之MySQL 8 部署_第18张图片

六、初始化MySQL并启动MySQL服务

cd /usr/local/mysql    进入/usr/local/mysql目录下
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data    初始化MySQL,创建数据文件目录和MySQL系统数据库,产生随机root密码

CentOS 8 Java环境部署之MySQL 8 部署_第19张图片

七、配置启动目录

cp ./support-files/mysql.server /etc/init.d/mysqld    //cp命令将mysql.server进行复制
  • 编辑/etc/init.d/mysql
vim /etc/init.d/mysqld    //进入编辑模式
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

CentOS 8 Java环境部署之MySQL 8 部署_第20张图片
CentOS 8 Java环境部署之MySQL 8 部署_第21张图片

八、设置系统服务

chmod +x /etc/init.d/mysqld    //赋予服务管理脚本权限
chkconfig --add mysqld    //将MySQL服务加⼊到系统服务
chkconfig --list mysqld    检查MySQL是否生效

CentOS 8 Java环境部署之MySQL 8 部署_第22张图片

九、启动MySQL

service mysqld start

CentOS 8 Java环境部署之MySQL 8 部署_第23张图片

十、配置环境变量

  • 输入vim编辑命令,在~/.bash_profile末尾写入以下命令
  • 说明:1> etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行,并从/etc/profile.d目录的配置文件中搜集shell的设置,对所有系统用户生效
  • 2> ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次,默认情况设置环境变量,执行用户的.bashrc文件,且方便以后在任意目录上都可以使用相关命令,即这种方法只对当前登录用户生效
  • 3> ~在Linux下面是代表HOME变量
vim ~/.bash_profile    //进入编辑模式
export PATH=$PATH:/usr/local/mysql/bin
  • 使环境变量⽣效
source ~/.bash_profile    //使环境变量生效

CentOS 8 Java环境部署之MySQL 8 部署_第24张图片
CentOS 8 Java环境部署之MySQL 8 部署_第25张图片

十一、登录MySQL

  • root登录
mysql -u root -p    //root登录
  • 提示错误信息:mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
  • 解决方法:输入以下命令
sudo yum install libncurses*
  • 修改root密码
alter user user() identified by "123456";    //修改密码(注意分号)
flush privileges;    //刷新系统权限相关表(注意分号)

CentOS 8 Java环境部署之MySQL 8 部署_第26张图片
CentOS 8 Java环境部署之MySQL 8 部署_第27张图片
CentOS 8 Java环境部署之MySQL 8 部署_第28张图片

十二、设置远程登录

  • 查看已有用户权限信息
use mysql;    //使用数据库(注意分号)
select user,host,plugin from user;    //查看已有用户的权限信息(注意分号)

CentOS 8 Java环境部署之MySQL 8 部署_第29张图片

  • 远程登录
CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';     //注意分号
GRANT ALL ON *.* TO 'root'@'%';     //注意分号
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';    //注意分号
FLUSH PRIVILEGES;    //注意分号

CentOS 8 Java环境部署之MySQL 8 部署_第30张图片

十三、Navicat测试

  • 连接虚拟机
    CentOS 8 Java环境部署之MySQL 8 部署_第31张图片
  • 出现错误
    2003-Can’t connect to MySQL server on ‘xxx’ (10060 “Unknown error”)
    CentOS 8 Java环境部署之MySQL 8 部署_第32张图片
  • 检查
  • 查看虚拟机3306端口是否开启
netstat -an | grep 3306
  • 查看虚拟机防火墙状态(为running)
firewall-cmd --state

CentOS 8 Java环境部署之MySQL 8 部署_第33张图片

  • 关闭虚拟机防火墙(这里并没有选择永久关闭,即重启虚拟机会再次开启防火墙)
systemctl stop firewalld    //关闭防火墙
systemctl disable firealld    //禁止防火墙开机自启

CentOS 8 Java环境部署之MySQL 8 部署_第34张图片

  • 重新连接Navicat
  • 连接成功
    CentOS 8 Java环境部署之MySQL 8 部署_第35张图片

你可能感兴趣的:(Linux下Java环境搭建)