Linux服务器安装jdk、tomcat和mysql

Xshell和FZ能顺利连接到服务器后,接下来就要配置程序的运行环境了。

1.JDK

作为一个加瓦程序猿,jdk是一切的开始。没有jdk什么Java程序也运行不了,所以首先安装jdk并配置系统变量。

1.1下载jdk安装包

建议去官网下载。需要注意一下下载版本是64位还是32位,这里贴一个链接点这里下载jdk

1.2解压并安装

找一个合适的路径,一般是/usr下,执行命令: tar -zxvf jdk-8u211-linux-x64.tar.gz 等待解压完成即可。如需删除安装包,执行如下命令: 

rm jdk-8u211-linux-x64.tar.gz -f。

1.3配置环境变量

先打开配置文件: vim /etc/profile ,配置相关内容如下:

export JAVA_HOME=/usr/java/jdk1.8.0_51

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}

其中,JAVA_HOME需要根据你自己的jdk安装路径来写,其余内容都是一样的,直接使用即可。

1.4让上述配置生效

执行命令: source /etc/profile 。如何确认环境配置好了呢,执行一个命令 java -version 就好。如果看到类似以下的内容,就说明已安装并配置好了:

java version "1.8.0_51"

Java(TM) SE Runtime Environment (build 1.8.0_51-b16)

Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)

2.Tomcat

如果你的项目是SpringBoot框架构建的话,Tomcat其实可以不装,SpringBoot内置有tomcat容器。 确实要安装的话,首先下载安装包,注意安装包和jdk的版本要匹配,jdk1.8和Tomcat8更配。可以向下兼容,但不建议,版本匹配可以避免许多莫名的问题。 接下来安装。执行解压命令: tar -zxvf -f apache-tomcat-8.5.37.tar.gz 如果嫌文件夹名字太长,可以重命名一下: mv apache-tomcat-8.5.37 tomcat 服务的启动和关闭都是在bin目录下进行的,启动./startup.sh,关闭./shutdown.sh。 关于如何在Tomcat容器发布服务,请自行百度。本人没有使用外置的Tomcat来部署服务。

3.MySQL

压轴的来了,MySQL的难度有点大。装一个MySQL比装10个jdk都累。

3.1下载安装包

下载时注意服务器的版本和位数,这里贴一个Centos7 64位的MySQL下载链接:mysql下载。或者如果是云服务器的话,一般都能直接下载,找个合适的目录,执行wget URL就能下载了(URL是下载链接)。

3.2解压安装

命令一样: tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar 。重命名一下: mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql 创建mysql用户组并赋权: groupadd mysql useradd -r -g mysql mysql 创建mysql运行时必要的文件夹: mkdir -p /data/mysql 并赋权chown mysql:mysql -R /data/mysql

在Linux中权限是个很重要的概念,有时候莫名报错说不定就是权限不够。

3.3修改配置文件

执行vim /etc/my.cnf进入编辑模式,按I键开始编辑;按Esc退出编辑;:wq保存并退出。成品如下:

[mysqld]

bind-address=0.0.0.0

port=3306

user=mysql

datadir=/data/mysql

basedir=/usr/mysql/mysql

socket=/var/lib/mysql/mysql.sock

character_set_server=utf8

explicit_defaults_for_timestamp=true

symbolic-links=0

[mysqld_safe]

log-error=/data/mysql/mysql.err

pid-file=/data/mysql/mysql.pid

!includedir /etc/my.cnf.d

还可以用FZ把文件下载到本地,编辑好以后再上传回去,毕竟vim不熟练,编辑起来有点慢。 注意,配置文件中的路径都要存在,否则后续步骤会报错。

3.4执行初始化

进入到mysql的bin目录下,执行命令: ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/mysql/mysql/ --datadir=/data/mysql/ --user=mysql --initialize 此时如果你的服务器是阿里的,那么99.999%会报错libaio找不到,那么就去下载这个文件libaio文件下载。随便找个目录下载好,然后安装它: rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm 装好后再执行一次初始化的命令,不出意外应该成功了。成功初始化,我们需要拿到密码,在mysql的运行日志里有: 查看日志:cat /data/mysql/mysql.err 日志最后一行的root @ localhost: 后边就是密码,记下它,一会儿登录用。最后将mysql服务放到init.d目录下: cp /usr/mysql/mysql/support-files/mysql.server /etc/init.d/mysql 初始化完毕。

3.5启动服务并登录

service mysql start 我在这一步的时候报错了,查看日志发现错误信息如下: Could not create unix socket lock file/var/lib/mysql/mysql.sock.lock. 不能创建文件那大概率就是没有权限,赋权: chown -R mysql:mysql /var/lib/mysql/ 启动成功,开始登陆。如果使用这个命令 ./mysql -u root -p登录,估计又会报错: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) 这是因为my.cnf 配置文件中设置了 [mysqld] 的参数 socket ,而没有设置[client]的参数socket。那么 mysql.sock 这个文件有什么用呢?mysql 支持 socket 和 TCP/IP 连接,而连接localhost通常通过一个Unix域套接字文件(就是这个sock)进行,一般是/tmp/mysql.sock。/tmp 文件夹属于临时文件,随时可能被删除。如果套接字文件被删除了,本地客户就不能连接,就报错。 所以一个办法是强制本地使用TCP/IP连接登录: ./mysql -uroot -h 127.0.0.1 -p 或者修改配置文件,添加客户端的sock:

修改前

[mysqld]

socket=/var/lib/mysql/mysql.sock(这个是服务端)

修改后

[mysqld]

socket=/var/lib/mysql/mysql.sock

[client] port=3306 socket=/var/lib/mysql/mysql.sock(添加客户端)

本人懒,使用了第一种方法。

3.6修改数据库设置

登录成功后,需要一些基本设置,首先要改密码(可以不改): SET PASSWORD = PASSWORD('123456'); 设置密码过期时间(一般是永不过期): ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; 刷新配置; FLUSH PRIVILEGES; 配置允许远程连接(方便使用Navicat等工具): grant all privileges on *.* to 'root'@'%' identified by '123456'; 到此mysql的安装以及配置就完成了。

之前说到Tomcat的问题。因为是SpringBoot项目,内嵌了Tomcat,因此就无须使用外置容器了(当然也可以用,看个人喜好)。部署服务的话,先用FZ将打好的jar包上传到服务器任意目录(我的在/home),执行命令启动服务: nohup java -jar xxxx.jar >/dev/null 2>&1 & 此时要注意因为端口占用而导致启动失败的情况,查看端口情况: netstat -tunpl |grep 8080 或 ss -lntpd | grep 8080 找到占用端口的进程,“杀掉”: kill -9 进程号 再次启动服务就好了。

以上就是全部了,有什么错误欢迎指出。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值