Linux服务器服务搭建及项目部署超详细

感谢,参考声明:https://blog.csdn.net/SYQ20122012/article/details/124345024

1、安装JDK

1.1 下载JDK(已验证可以用)

jdk官网地址: https://www.oracle.com/cn/java/technologies/downloads/archive/

页面往下拉,右下找到自己需要的版本。官网下载的比较慢。英文不好的建议使用Edge浏览器打开有翻译。

这里我用的jdk1.8.0_321版本,大家可以从官网下载或从下方网盘下载
jdk1.8.0_321版本下载地址: https://pan.baidu.com/s/1N4KUpTyjxpsWiFCZkWecOg
提取码: in2p

1.2 解压JDK

首先创建java文件夹:	mkdir /usr/java
进入java文件夹: 	cd /usr/java/
上传JDK安装包:  rz

提示错误:

[root@iZbp1geif6wob8t8yvv02kZ ~]# rz 
-bash: rz: command not found

执行命令:

yum install lrzsz

执行安装
解压JDK安装包: tar -zxvf jdk-xxx.tar.gz

[root@localhost usr]# mkdir /usr/java
[root@localhost usr]# cd /usr/java/
[root@localhost java]# rz
[root@localhost java]# tar -zxvf jdk-8u191-linux-x64.tar.gz

1.3 配置profile文件

编辑profile配置文件:	vim /etc/profile
[root@localhost java]# vim /etc/profile

输入i进入编辑模式,在最下面补充配置信息,补充完后按Esc退出编辑模式后,输入:wq进行保存并退出

export JAVA_HOME=/usr/java/jdk1.8.0_191
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
如下图所示:

在这里插入图片描述

配置文件生效: 		source /etc/profile
查看JDK版本信息: 	java -version
[root@localhost java]# source /etc/profile
[root@localhost java]# java -version
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
[root@localhost java]# 

1.4 删除openJDK

注意: 有多少版本删除多少
rpm -qa|grep java
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.181-7.b13.el7.x86_64

[root@localhost java]# rpm -qa|grep java
java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64
python-javapackages-3.4.1-11.el7.noarch
tzdata-java-2020a-1.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
javapackages-tools-3.4.1-11.el7.noarch
java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64
[root@localhost java]# rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64
[root@localhost java]# rpm -e --nodeps python-javapackages-3.4.1-11.el7.noarch
[root@localhost java]# rpm -e --nodeps tzdata-java-2020a-1.el7.noarch
[root@localhost java]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
[root@localhost java]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
[root@localhost java]# rpm -e --nodeps javapackages-tools-3.4.1-11.el7.noarch
[root@localhost java]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64

2、安装maven(已验证可以用)

2.1 准备maven安装包

maven官网地址(找的maven不是最新的是以前的版本): https://archive.apache.org/dist/maven/maven-3/

这里我用的apache-maven-3.1.1版本,大家可以从官网下载或从下方网盘下载
apache-maven-3.1.1版本下载地址: https://pan.baidu.com/s/1V7bzL0LdrA58gja2cgvnlg
提取码: e4hv

2.2 解压maven安装包

首先创建maven文件夹:	mkdir /usr/maven
进入maven文件夹: 	cd /usr/maven/
上传maven安装包:  	rz
解压maven安装包:		tar -zxvf apache-maven-3.1.1-bin.tar.gz

[root@localhost usr]# mkdir /usr/maven
[root@localhost usr]# cd /usr/maven/
[root@localhost maven]# rz
[root@localhost maven]# tar -zxvf apache-maven-3.1.1-bin.tar.gz

2.3 配置profile文件

编辑profile配置文件:	vim /etc/profile

[root@localhost java]# vim /etc/profile

输入i进入编辑模式,在最下面补充配置信息,补充完后按Esc退出编辑模式后,输入:wq进行保存并退出

export M2_HOME=/usr/maven/apache-maven-3.1.1
export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin

如下图所示:

在这里插入图片描述

配置文件生效: 		source /etc/profile
查看maven版本信息: 	mvn -v

[root@localhost maven]# source /etc/profile
[root@localhost maven]# mvn -v
Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 23:22:22+0800)
Maven home: /usr/maven/apache-maven-3.1.1
Java version: 1.8.0_191, vendor: Oracle Corporation
Java home: /usr/java/jdk1.8.0_191/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1160.el7.x86_64", arch: "amd64", family: "unix"
[root@localhost maven]# 

2.4 上传本地的setting文件到服务器(根据项目需求是否需要更改setting文件)

进入maven配置文件conf文件夹:	cd /usr/maven/apache-maven-3.1.1/conf/
上传准备好的setting配置文件: rz

[root@localhost maven]# cd /usr/maven/apache-maven-3.1.1/conf/
[root@localhost conf]# rz

3、安装git客户端

3.1 准备git安装包

这里我用的git-2.17.0版本,大家可以从官网下载或从下方网盘下载
git-2.17.0版本下载地址: https://pan.baidu.com/s/1hE8Yq08ClntNNCr4FIVkKg
提取码: g0n0

3.2 解压git安装包

首先安装源码所需要的依赖: yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
删除旧版本:			yum remove git
创建git文件夹:		mkdir /usr/git
进入git文件夹: 		cd /usr/git/
上传git安装包:  		rz
解压git安装包:		tar -zxvf git-2.17.0.tar.gz

[root@localhost usr]# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
[root@localhost usr]# yum remove git
[root@localhost usr]# mkdir /usr/git
[root@localhost usr]# cd /usr/git/
[root@localhost git]# rz
[root@localhost git]# tar -zxvf git-2.17.0.tar.gz

进入git目录: cd /usr/git/git-2.17.0
编译:        make prefix=/usr/local/git all
安装:	     make prefix=/usr/local/git install

[root@localhost git]# cd /usr/git/git-2.17.0
[root@localhost git-2.17.0]# make prefix=/usr/local/git all
[root@localhost git-2.17.0]# make prefix=/usr/local/git install

2.3 配置profile文件

编辑profile配置文件:	vim /etc/profile

[root@localhost java]# vim /etc/profile

输入i进入编辑模式,在最下面补充配置信息,补充完后按Esc退出编辑模式后,输入:wq进行保存并退出

export PATH="/usr/local/git/bin:$PATH"

如下图所示:

在这里插入图片描述

配置文件生效: 		source /etc/profile
查看git版本信息: 	git --version

[root@localhost git-2.17.0]# source /etc/profile
[root@localhost git-2.17.0]# git --version
git version 2.17.0
[root@localhost git-2.17.0]# 

4、安装Redis

4.1 准备Redis安装包

从远程获取redis安装包:
    wget http://download.redis.io/releases/redis-4.0.8.tar.gz

[root@localhost soft]# wget http://download.redis.io/releases/redis-4.0.8.tar.gz

4.2 解压Redis安装包:

解压:
	tar -zxvf redis-4.0.8.tar.gz
安装tcl
    wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
    tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/
    cd /usr/local/tcl8.6.1/unix/
    ./configure
    make
    make install
编译和安装redis:
	解压redis安装包:
		tar -zxvf redis-4.0.8.tar.gz
	将解压文件移动到redis目录:
		mv /root/soft/redis-4.0.8 /usr/local/redis
    cd /usr/local/redis
    make
    cd src
    make install prefix=/usr/local/redis

[root@localhost redis]# wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
[root@localhost redis]# tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/
[root@localhost redis]# cd /usr/local/tcl8.6.1/unix/
[root@localhost unix]# ./configure
[root@localhost unix]# make
[root@localhost unix]# make install
[root@localhost unix]# cd /root/soft
[root@localhost soft]# tar -zxvf redis-4.0.8.tar.gz
[root@localhost soft]# mv /root/soft/redis-4.0.8 /usr/local/redis
[root@localhost soft]# cd /usr/local/redis/
[root@localhost soft]# make
[root@localhost soft]# cd src
[root@localhost src]# make install prefix=/usr/local/redis

4.3 配置redis.conf

cd /usr/local/redis
vim redis.conf	(建议通过下载redis.conf文件修改后再上传)
找到daemonize no改为yes
找到appendonly no改为yes
找到bind 127.0.0.1 注释掉 # bind 127.0.0.1
找到requirepass 解除注释并设置密码root

[root@localhost unix]# cd /usr/local/redis/redis-4.0.8/
[root@localhost redis-4.0.8]# vim redis.conf

如下图所示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.4 启动

cd /usr/local/redis/src
./redis-server ../redis.conf

4.5 停止

cd /usr/local/redis/src
./redis-cli -a root shutdown

4.6 验证

连接redis服务:
	redis-cli  --raw
注意:如果命令后面不加"--raw"会导致获取中文乱码

[root@localhost src]# ./redis-cli
127.0.0.1:6379> auth root
127.0.0.1:6379> set runoob "菜鸟教穧¨‹"
OK
127.0.0.1:6379> get runoob
"\xe8\x8f\x9c\xe9\xb8\x9f\xe6\x95\x99\xe7\xa8\xe7\xa8\x8b"
[root@localhost src]# ./redis-cli --raw
127.0.0.1:6379> auth root
OK
127.0.0.1:6379> set aa "菜鸟教程"
OK
127.0.0.1:6379> get aa
菜鸟教程
127.0.0.1:6379> 

验证:
	set name zhangsan
提示认证失败,这时需要输入密码:
	格式: auth password
重新验证:
	set name zhangsan
	get name

[root@localhost src]# redis-cli
127.0.0.1:6379> set name zhangsan
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth root
OK
127.0.0.1:6379> set name zhangsan
OK
127.0.0.1:6379> get name
"zhangsan"
127.0.0.1:6379>

5、安装nginx

5.1 准备安装包

Nginx官网下载地址: nginx:下载

image-20250630213252249

创建nginx文件夹:
	cd /usr/local/
    mkdir nginx
    cd nginx
上传nginx安装包:
	这里我用的nginx-1.13.7版本,大家可以从官网下载或从下方网盘下载:
 	nginx-1.13.7版本网盘下载地址: https://pan.baidu.com/s/1Kzk5hg7Nbo3AdtEvyAQazw
 	提取码: 68r1

[root@localhost ~]# mkdir /usr/local/nginx
[root@localhost ~]# cd /usr/local/nginx/
[root@localhost ~]# rz
[root@localhost nginx]# ll
总用量 968
-rw-r--r--. 1 root root 990836 11月 21 2017 nginx-1.13.7.tar.gz
[root@localhost nginx]# 

5.2 安装nginx依赖:

云安装依赖:
	yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

[root@localhost nginx]# yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

5.3 编译和安装:

tar -zxvf nginx-1.13.7.tar.gz
cd nginx-1.13.7
./configure
make
make install

[root@localhost nginx]# tar -zxvf nginx-1.13.7.tar.gz
[root@localhost nginx]# cd nginx-1.13.7
[root@localhost nginx]# ./configure
[root@localhost nginx]# make
[root@localhost nginx]# make install

5.4 修改配置文件:

修改:
	vim /usr/local/nginx/conf/nginx.conf
补充下方信息:
    location / {
            root /root/build/web/dist/;
            index index.html index.htm;
    }

[root@localhost nginx-1.13.7]# vim /usr/local/nginx/conf/nginx.conf

如下图:
在这里插入图片描述

5.5 启动nginx

cd /usr/local/nginx/sbin
./nginx -c /usr/local/nginx/conf/nginx.conf

5.6 停止nginx

cd /usr/local/nginx/sbin
./nginx -s stop

5.7 重启nginx

cd /usr/local/nginx/sbin
./nginx -s reload

6、安装rabbitMQ:

6.1 安装依赖

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel
yum -y install epel-release
yum -y install socat

6.2 安装erlang

下载erlang安装包(网盘下载):
	网盘地址: https://pan.baidu.com/s/1ZR2KMpX8OdgD3rDO_tVQeA
	提取码: osty
安装:
	 rpm -ivh erlang-19.0.4-1.el7.centos.x86_64.rpm

6.3 下载RabbitMQ安装包

下载RabbitMQ安装包:
	下载方式一(云下载):
		https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.7
	下载方式二(网盘下载):
		网盘地址: https://pan.baidu.com/s/1uQt_E1B8NEbz4Hafsw9ybg
		提取码: r3rl
这里用的版本是:rabbitmq-server-3.6.10-1.el7.noarch.rpm

6.4 安装

rpm -ivh --nodeps rabbitmq-server-3.6.10-1.el7.noarch.rpm 

----添加下面的代码到配置文件(vim /etc/profile)中

export PATH=$PATH:/usr/lib/rabbitmq/bin

在这里插入图片描述

//执行下面的命令刷新配置:
	source /etc/profile

6.5 修改文件所有者和文件组

cd /var/
chgrp rabbitmq run/ -R
chown rabbitmq run/ -R
ln -s /usr/local/erlang/bin/erl /usr/bin/erl
chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/mnesia/
service rabbitmq-server start
注意出现如下问题解决方式: 
	1. 如果执行"chgrp rabbitmq run/ -R"时出现该问题: chgrp: 无法访问"run/user/1000/gvfs": 权限不够
		则执行: umount /run/user/1000/gvfs
				rm -rf /run/user/1000/gvfs
		原因是: 官方说这是一个bug——bug#615848. 原因是FUSE文件系统和权限不配的问题,全局搜索时碰到它就会退出报错。顺带跑到目录/run/user/1000/下面查看了下权限,发现出了第一位是d表示gvfs是个目录外,其他表示权限的9位全部是问号。
	2. 如果执行"service rabbitmq-server start"时,出现:Redirecting to /bin/systemctl start rabbitmq-server.service Job for rabbitmq-server.service failed because the control process exited with error code. See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.
		则执行:  journalctl -xe 下令进一步查看问题

6.6 配置RabbitMQ账号密码

rabbitmq-plugins enable rabbitmq_management

6.7 添加账号

rabbitmqctl add_user admin admin123

6.8 设置超级管理员

rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin '.*' '.*' '.*'

6.9 访问地址

http://{IP}:15672/
注意:打开防火墙,开放端口

开放linux系统端口

systemctl start firewalld
firewall-cmd --zone=public --add-port=8087/tcp --permanent
firewall-cmd --reload

6.10 RabbitMQ 通道配置

6.10.1 添加用户

在这里插入图片描述
在这里插入图片描述

6.10.2 Virtual Hosts管理

在这里插入图片描述
对用户进行授权,点击需要授权的/mhkg
在这里插入图片描述
在这里插入图片描述
授权成功
在这里插入图片描述

在这里插入图片描述

6.11 管理界面功能模块

6.11.1 OverView概况

在这里插入图片描述

6.11.2 Connections连接

mq连接使用信息
1

在这里插入图片描述

6.11.3 Channels 频道、通道

在这里插入图片描述

6.11.4 Exchanges 交换机

在这里插入图片描述

6.11.5 Queues 队列

在这里插入图片描述

6.12 RabbitMQ重启

重启rabbitmq服务通过两个命令来实现:

rabbitmqctl stop :停止rabbitmq
rabbitmq-server restart : 重启rabbitmq
12

8、安装mysql(已验证可以用)

1. 下载 MySQL 5.7.26 tar.gz 包

# 进入下载目录  这个目录你自己选看下载到哪里,下面下载的命令会把包下载到当前目录
mkdir -p /opt/mysql && cd /opt/mysql

# 从官方归档仓库下载(国内用户可替换为华为云/清华源)
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

# 验证文件完整性(可选) 这一步可以不做
md5sum mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
# 对比官方MD5:https://downloads.mysql.com/archives/community/

2. 解压并准备安装

# 解压并重命名目录
tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql-5.7.26

# 安装依赖库
sudo yum install libaio numactl -y

3. 创建 MySQL 用户和组

# 创建系统用户(禁止登录)
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql

4. 配置数据目录和权限

# 创建数据目录
sudo mkdir -p /var/lib/mysql
sudo chown -R mysql:mysql /var/lib/mysql
sudo chmod 750 /var/lib/mysql

# 设置MySQL安装目录权限
sudo chown -R mysql:mysql /opt/mysql/mysql-5.7.26

5. 初始化 MySQL

cd /opt/mysql/mysql-5.7.26

# 初始化数据库(记录输出的临时root密码!)
sudo -u mysql bin/mysqld --initialize \
  --user=mysql \
  --basedir=/opt/mysql/mysql-5.7.26 \
  --datadir=/var/lib/mysql

# 示例输出:
# [Note] A temporary password is generated for root@localhost: JqkfT3jre&*1

6. 配置 my.cnf 文件

sudo vi /etc/my.cnf

写入以下内容(按需调整):

[mysqld]
basedir=/opt/mysql/mysql-5.7.26
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log  # 这个文件当前文件里面可能已经存在了,你要自己写就把它原来的注释掉,但是下面永奥的地方你记得写成自己写的目录
pid-file=/var/run/mysqld/mysqld.pid # 这个文件当前文件里面可能已经存在了,你要自己写就把它原来的注释掉

[client]
socket=/var/lib/mysql/mysql.sock

7. 启动 MySQL 服务

方式一:手动启动(测试用)

sudo -u mysql /opt/mysql/mysql-5.7.26/bin/mysqld_safe --defaults-file=/etc/my.cnf &

启动成功以后可以去日志里面查看 就是你上面设置的/var/log/mysqld.log 这个日志文件一定要看看是不是成功输出了,没有的话报错信息也在这里面

成功启动后的日志输出,也可以通过ps -ef |grep mysql 查看

image-20250629202600768

方式二:配置 Systemd 服务(推荐)**

sudo vi /etc/systemd/system/mysqld.service

内容如下:

[Unit]
Description=MySQL Server
After=network.target

[Service]
User=mysql
Group=mysql
ExecStart=/opt/mysql/mysql-5.7.26/bin/mysqld --defaults-file=/etc/my.cnf #这里的地址一定要写成你自己的,跟上面设置的一样
Restart=on-failure

[Install]
WantedBy=multi-user.target

启用服务:

sudo systemctl daemon-reload
sudo systemctl start mysqld
sudo systemctl enable mysqld

image-20250629213708826


8. 登录 MySQL 并修改密码

# 使用临时密码登录
/opt/mysql/mysql-5.7.26/bin/mysql -u root -p

# 输入临时密码后,修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
FLUSH PRIVILEGES;

9. 环境变量配置(可选)

echo 'export PATH=$PATH:/opt/mysql/mysql-5.7.26/bin' >> ~/.bashrc
source ~/.bashrc

10. 验证安装

# 检查版本
mysql --version

# 检查服务状态
sudo systemctl status mysqld

# 检查进程用户
ps aux | grep mysqld | grep -v grep
# 应显示用户为 `mysql`

11.如何远程连接

Linux服务器装好以后,我们开发环境一般是在Windows系统,所以如何连接呢?(navcat 如何连接centos中配置的mysl数据库? 如果连接失败了怎么处理)

像这种错误 GHost '192.168.71.120' is not allowed to connect to this MySQL server

一、连接步骤**

1. 确保 MySQL 允许远程连接

在 CentOS 上执行:

# 登录 MySQL 以下的命令到mysql/bin/ 目录下 
bin/mysql -u root -p   

# 创建远程用户(替换 `your_password`) 授权所有的ip 不推荐生产环境
CREATE USER 'navicat_user'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'navicat_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
# 创建/修改用户权限(替换密码) 授权单一ip  your_user your_password 换成你自己的 可以自定义起,不需要跟服务器上面的账号密码一样 
CREATE USER 'your_user'@'192.168.71.120' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'your_user'@'192.168.71.120' WITH GRANT OPTION;
FLUSH PRIVILEGES;

# 修改配置文件允许远程访问
sudo vi /etc/my.cnf

image-20250629222926241

[mysqld] 段添加:

bind-address = 0.0.0.0  # 允许所有IP访问
2. 开放防火墙端口
# CentOS 7/8
sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reload

# 检查端口是否开放
sudo firewall-cmd --list-ports | grep 3306
3. Navicat 连接配置
  • 主机名/IP:填写 CentOS 服务器的公网IP或内网IP
  • 端口3306
  • 用户名navicat_user
  • 密码your_password
  • 连接方式:选择 MySQL(TCP/IP)

二、连接失败排查

1. 检查网络连通性
# 在本地电脑测试端口(替换为服务器IP)
telnet 192.168.1.100 3306
# 或
nc -zv 192.168.1.100 3306
  • 如果不通:可能是防火墙/安全组未放行端口。
2. 检查 MySQL 服务状态
# 确认服务运行中
sudo systemctl status mysqld

# 检查是否监听正确端口
sudo netstat -tulnp | grep 3306

正常应显示:

tcp6  0  0 :::3306  :::*  LISTEN  12345/mysqld
3. 验证用户权限
-- 在 MySQL 中执行
SELECT Host, User FROM mysql.user;
SHOW GRANTS FOR 'navicat_user'@'%';

确保用户 navicat_userHost%(允许任意IP)。

4. 检查 SELinux 限制
# 临时关闭 SELinux(测试用)
sudo setenforce 0

# 永久关闭(需重启)
sudo vi /etc/selinux/config

修改为:

SELINUX=disabled
5. 查看 MySQL 错误日志
sudo tail -n 50 /var/log/mysqld.log

常见错误:

  • Host 'xxx' is not allowed to connect → 用户未授权远程访问
  • Can't connect to MySQL server on 'xxx' → 网络/防火墙问题

三、高级配置(可选)

1. 限制访问IP(提升安全)
-- 仅允许特定IP连接
CREATE USER 'navicat_user'@'192.168.1.200' IDENTIFIED BY 'password';
GRANT ALL ON *.* TO 'navicat_user'@'192.168.1.200';
2. 启用 SSL 加密连接

在 Navicat 连接设置中:

  • 切换到 SSL 选项卡
  • 选择 使用 SSL
  • 上传服务器证书(如配置)

四、Navicat 连接截图指引

  1. 新建连接 → 选择 MySQL
    https://example.com/navicat-new-connection.png
  2. 填写服务器IP、端口、用户名、密码
  3. 点击 测试连接 确认成功

总结表:常见问题与解决

问题现象 解决方法
连接超时 检查防火墙/安全组是否开放 3306 端口
用户拒绝访问 执行 GRANT 授权并 FLUSH PRIVILEGES
只能本地连接 修改 my.cnfbind-address=0.0.0.0
密码正确但无法连接 检查用户表 mysql.user 的密码插件

通过以上步骤,Navicat 应能成功连接 CentOS 的 MySQL。如仍失败,请提供具体错误信息进一步诊断。

9、安装nodejs

wget https://nodejs.org/dist/v12.16.3/node-v12.16.3-linux-x64.tar.gz

tar  -zxvf node-v12.16.3-linux-x64.tar.gz -C /usr/local/

cd /usr/local/

mv node-v12.16.3-linux-x64/ nodejs

ln -s /usr/local/nodejs/bin/node /usr/local/bin

ln -s /usr/local/nodejs/bin/npm /usr/local/bin

npm install --unsafe-perm

mkdir ~/.npm-global

npm config set prefix '~/.npm-global'

export PATH=~/.npm-global/bin:$PATH

npm config set registry https://registry.npm.taobao.org

source ~/.profile

安装cnpm

10、安装openOffice插件

cd /usr/local/

mkdir openoffice

将openoffice的安装包Apache_OpenOffice_4.1.0_Linux_x86-64_install-rpm_zh-CN.tar上传到该目录下面

解压 tar -zxvf Apache_OpenOffice_4.1.0_Linux_x86-64_install-rpm_zh-CN.tar

cd  /usr/local/openoffice/zh-cn/RPMS 

yum localinstall *.rpm 
cd desktop-integration
rpm -ivh openoffice4.1-redhat-menus-4.1-9764.noarch.rpm

默认会安装在/opt目录下。

启动服务
	1、/opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard 临时启动

	2、nohup /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard & 后台启动

可能报错:
	no suitable windowing system found, exiting  执行如下命令:yum groupinstall "X Window System"

netstat -lnp |grep 8100 或者 ps -ef |grep soffice
安装中文字体

cd /usr/share/fonts

创建一个中文文件夹,并进入 
mkdir chinese 
cd chinese
复制windos字体到linux:通过xshell,复制粘贴到chinese里面

给字体赋予权限并进行一下操作:
       chmod 755 *.TTF
       chmod 755 *.TTC
       mkfontscale (如果提示 mkfontscale: command not found,需自行安装 # yum install mkfontscale)
       mkfontdir
       fc-cache -fv(如果提示 fc-cache: command not found,则需要安装# yum install fontconfig )

       然后中文乱码就解决了,不需要重启linux。


npm install -g cnpm --registry=https://registry.npm.taobao.org
ln -s /root/.npm-global/bin/cnpm /usr/local/bin

11、开放linux系统端口

systemctl start firewalld
firewall-cmd --zone=public --add-port=8087/tcp --permanent
firewall-cmd --reload

12 配置开发-生产环境

12.1 准备生产配置文件

application.yml			开发环境配置文件
application-prod.yml	生产环境配置文件
注意: 将生产环境配置文件中的服务地址都改为对应生产环境服务地址

在这里插入图片描述

12.2 创建生产环境分支

将master开发分支POM文件中"1.0.0-SNAPSHOT" 改为 "1.0.0-RELEASE"

开发分支POM文件截图1
生产分支POM文件截图1
创建prod生产分支并提交
在这里插入图片描述

12.3 准备生产环境打包脚本文件

创建打包脚本文件: build-platform.sh

[root@localhost cqkt_build]# touch build-platform.sh 

编辑 build-platform.sh脚本文件:

[root@localhost cqkt_build]# vim build-platform.sh 

进入build-platform.sh脚本文件后输入"i"进入编辑模式

echo '*********************build platform start**********************'
cd ~/cqkt_codes/project_platform
git fetch
git checkout $1
git pull origin $1
mvn clean install
cd target
PROCESS=`ps -ef|grep project_platform_cqkt-1.0.0-RELEASE.jar |grep -v grep|grep -v PPID|awk '{ print $2}'`
for i in $PROCESS
do
  echo "Kill the $1 process [ $i ]"
  kill -9 $i
done
rm -rf ~/cqkt_build/project_platform_cqkt-1.0.0-RELEASE.jar
cp project_platform_cqkt-1.0.0-RELEASE.jar ~/cqkt_build/
cd ~/cqkt_build/
nohup java -jar -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -Xms1024m -Xmx1024m -Xmn512m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC project_platform_cqkt-1.0.0-RELEASE.jar --spring.profiles.active=prod > nohup/platform.out &
echo '**********************build platform end ************************'
123456789101112131415161718
编辑完后按"Esc"退出编辑模式,再输入":wq"后回车进行保存和退出
这样生产环境打包脚本文件build-platform.sh就准备好了

发包测试:

[root@localhost cqkt_build]# sh build-platform.sh prod
*********************build platform start**********************
已经位于 'prod'
您的分支与上游分支 'origin/prod' 一致。
来自 https://e.coding.net/coder12345/project_cqkt/project_platform
 * branch            prod       -> FETCH_HEAD
已经是最新的。
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
-------------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 44.601s
[INFO] Finished at: Thu Apr 21 16:12:46 CST 2022
[INFO] Final Memory: 72M/473M
[INFO] ------------------------------------------------------------------------
Kill the prod process [ 17568 ]
**********************build platform end ************************

打包成功,通过日志查看发包详情,配置信息是按照生产环境配置文件"application-prod.yml"加载的,生产环境打包配置成功

2022-04-21 16:14:04,086 INFO (CachingOperationNameGenerator.java:40)- Generating unique operation named: createTemplateProcessUsingPOST_1
2022-04-21 16:14:04,116 INFO (CachingOperationNameGenerator.java:40)- Generating unique operation named: nodeConnectUsingGET_1
2022-04-21 16:14:04,122 INFO (CachingOperationNameGenerator.java:40)- Generating unique operation named: queryPrevAllNodesUsingGET_1
2022-04-21 16:14:04,298 INFO (Jdk14Logger.java:87)- Attempting to connect to: 127.0.0.1:5672
2022-04-21 16:14:04,477 INFO (Jdk14Logger.java:87)- Created new connection: connectionFactory#62bf65d4:0/SimpleConnection@dfcda3 [delegate=amqp://cqkt@127.0.0.1:5672//cqkt, localPort= 52632]
2022-04-21 16:14:04,715 INFO (Jdk14Logger.java:87)- No TaskScheduler/ScheduledExecutorService bean found for scheduled processing
2022-04-21 16:14:04,752 INFO (DirectJDKLog.java:180)- Starting ProtocolHandler ["http-nio-8906"]
2022-04-21 16:14:04,758 INFO (DirectJDKLog.java:180)- Using a shared selector for servlet write/read
2022-04-21 16:14:04,944 INFO (Jdk14Logger.java:87)- Tomcat started on port(s): 8906 (http) with context path ''
2022-04-21 16:14:04,948 INFO (Jdk14Logger.java:87)- Started PlatFormApplication in 76.875 seconds (JVM running for 78.177)
2022-04-21 16:14:05,159 INFO (HikariDataSource.java:110)- HikariPool-1 - Starting...
2022-04-21 16:14:05,995 INFO (HikariDataSource.java:123)- HikariPool-1 - Start completed.
2022-04-21 16:14:06,023 INFO (SqlLogInterceptor.java:58)- Execute SQL : SELECT id,tx_time,icon,up_op,type,version,up_time,password,tx_op,sts,readonly,driver,usr,name,model,addr FROM data_source
2022-04-21 16:14:06,063 INFO (SqlLogInterceptor.java:67)- cost time 42ms
2022-04-21 16:14:06,158 INFO (CommandLineRunnerImpl.java:30)- *********************************************项目启动完成************************************************

posted @ 2025-06-29 21:21  哩个啷个波  阅读(495)  评论(0)    收藏  举报