CentOS 8 下环境配置问题
MySQL的配置
一、卸载MySQL(必须卸载干净)
1、查看安装的MySQL
rpm -qa | grep mysql
2、把查找出来的结果全部删除
rpm -ev [文件名] --nodeps
3、删除MySQL相关目录
find / -name mysql
rm -rf [目录名]
4、删除my.cnf配置文件,在etc目录下
5、检查卸载情况
rpm -qa | grep mysql
二、安装MySQL
1、切换到root用户
2、安装MySQL
sudo [dnf](若没有安装,则可以通过yum install dnf -y安装) install @mysql
mysql已经安装完成
3、配置my.cnf文件
vim /etc/my.cnf
[mysqld]
lower_case_table_names=1
4、设置自动启动
sudo systemctl enable --now mysqld
5、启动MySQL
service mysqld start
6、检查MySQL是否启动成功
service mysqld status
7、登入MySQL
mysql -uroot -p
首次登入不需要密码
8、检查大小写敏感
show variables like ‘%lower%’;
若值为1则说明配置成功
9、配置MySQL远程连接
添加远程登录用户
默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户。
修改root用户远程访问权限:
use mysql; //切换数据库
select host,user from user; //查看当前root用户的相关信息
如果当前为local host则表示只能本地访问,需要修改该值为%,代表授权 root 用户的所有权限并设置远程访问
update user set host =‘%’ where User =‘root’; //设置权限
flush privileges; //更新权限
sudo firewall-cmd --add-port=3306/tcp --permanent //系统中开放3306端口,使外界可以访问到
sudo firewall-cmd --reload //重新加载,使上述配置生效
三、安装过程中遇到的问题
1、启动报错
[root@localhost ~]# systemctl start mysqld
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
原因:
mysql初始化的时候,会检测目录 /var/lib/mysql 是否存在,如果不存在则创建;如果存在则检查该文件夹下是否有文件,如果有则报错并停止初始化
解决方法:
删除该文件下所有内容
rm -rf /var/lib/mysql/*
2、dnf命令是什么意思
DNF是新一代的RPM软件包管理器,它克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。目前CentOS7等版本默认未安装DNF,但可以通过yum install dnf -y的方式来安装dnf软件包管理器。
常用命令:
#检查并升级可用软件包:
dnf update
#删除缓存:
dnf clean all
#列出可用的软件源:
dnf repolist
#搜索软件:
dnf search $package
#查看软件的详细信息
dnf info $package
#安装软件:
dnf install $package
#升级软件包:
dnf update $package
#重新安装软件包
dnf reinstall $package
#列出所有安装的RPM包
dnf list installed
#删除软件包:
dnf remove $package
#删除所有原先因为依赖关系安装的不需要的软件包
dnf autoremove $package
#只下载软件包,不安装
dnf download $package
#查看更多命令:
dnf help
3、使用navicat 访问Linux中MySQL时出现2059错误
问题原因
在用navicat连接MySQL8+时会出现2059错误,这是由于新版本的MySQL使用的是caching_sha2_password验证方式,以前的navicat还没有支持这种验证方式。但方法一点都不好使,因为我们没法改别人的mysql的密码验证方式啊!(好像可以改,那得你本机的mysql版本的高于8,反正我5.7的版本cmd也远程不了,你用高版本的mysql可以试试)因为navicat的版本低,没有支持caching_sha2_password这种验证方式,
解决方法:
更换更高版本的Navicat Premium,在这里我更换了Navicat Premium 15,问题解决
JDK的配置
一、卸载JDK
1、查看安装的JDK
rpm -qa | grep jdk
2、卸载当前JDK内容
rpm -ev [文件名] --nodeps
3、检查卸载情况
rpm -qa | grep jdk
二、安装JDK
1、切换到root用户
2、通过FileZilla工具传压缩包到Linux下
3、在/usr/local/src/下创建jdk目录
mkdir jdk
4、将压缩包解压到该目录下
tar -xvf [压缩包] -C /usr/local/src/jdk/
5、配置环境变量
在/etc下有profile环境变量文件,该文件是全局环境变量的配置文件
打开该文件,将jdk配置到该文件中
在结尾处添加该内容
#set java_enviroment
JAVA_HOME=/usr/local/src/java/jdk-17.0.1
CLASSPATH=,:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
配置后重新加载该文件:source profile
6、检查是否安装成功
在任意目录下运行java或javac命令,查看是否执行成功
三、安装过程中遇到的问题
1、运行检查命令报错
[root@localhost /]# java
bash: /usr/local/src/jdk/jdk-17.0.1/bin/java: 无法执行二进制文件: 可执行文件格式错误
此错代表该jdk版本与该系统版本不匹配,换一个匹配的即可解决
Tomcat的配置
一、解压tomcat
- tar -xvf 文件名
二、放开对应端口
sudo firewall-cmd --add-port=8080/tcp --permanent //系统中开放8080端口,使外界可以访问到
sudo firewall-cmd --reload //重新加载,使上述配置生效
三、出错解决
- tail -f catalina.out可以查看tomcat实时运行结果
网络配置
一、配置文件
- vim /etc/sysconfig/network-scripts/ifcfg-ens160
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static //配置为静态ip
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens160
UUID=9047fa70-df80-4169-9db6-8d869a1d270b
DEVICE=ens160
ONBOOT=yes //设置开机自启
IPADDR=192.168.180.128
NETMASK=255.255.255.0
NETWORK=192.168.180.0
BROADCAST=192.168.0.255
二、域名配置
- vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.180.128 gyl.top
RK=192.168.180.0
BROADCAST=192.168.0.255
## 二、域名配置
* vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.180.128 gyl.top