服务器搭建—Ubuntu18部署JavaWeb项目—阿里云服务器ECS入门教程(Linux命令安装MySQL,JDK8,Tomcat)
文章目录
一、 文件操作命令
1. apt-get安装的文件路径
文件类型 | 位置 |
---|---|
下载的软件的存放位置 | /var/cache/apt/archives |
安装后软件的默认位置 | /usr/share |
可执行文件位置 | /usr/bin |
配置文件位置 | /etc |
lib文件位置 | /usr/lib |
1. 文件操作命令
操作 | 命令 | 案例或描述 |
---|---|---|
新建文件夹 | mkdir …/new_files_name | mkdir …/mysqlpkg |
删除 | rm -rf <目录名> | 删除一个非空目录下的一切 |
更改文件名 | mv file1 file2 | 将文件file1,更改文件名为file2 |
查看文件 | cat filename.extension | filename.extension 填写文件路径 |
修改文件 | vim filename.extension | filename.extension 填写文件路径。参见下图1,输入e编辑,再次输入i输入。按ESC结束 |
修改文件后保存并退出编辑界面 | :wq | - |
不保存,直接退出编辑界面 | :q | - |
二、Ubuntu 安装 MySQL 及 远程连接MySQL
1. 安装
1.1 安装命令:sudo apt-get install mysql-server mysql-client
1.1.2. 若提示错误如下:Unable to locate package mysql-server
E: Unable to locate package mysql-server
E: Unable to locate package mysql-client
1.1.3. 则更新软件源:sudo apt-get update
执行命令:sudo apt-get update
1.2. 设置MySQL密码
1.2.1 如果弹出的界面则输入密码⚫⚫⚫
1.2.2 如果没有则在安装之后修改密码:
sudo mysqladmin -u root password newrootsqlpassword
1.2.3 修改MySQL密码报错:Using a password on the command line interface can be insecure.
Warning
如果报错mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
就在原有命令中加上2>/dev/null 就行了。将mysqladmin的警告信息重定向到/dev/null,忽略掉告警信息。
1.3. 检查服务器是否启动
1.3.1 检测启动命令:sudo netstat -tap | grep mysql
一旦安装完成,MySQL 服务器应该自动启动。您可以在终端提示符后运行以上命令3.1来检查 MySQL 服务器是否正在运行:
1.3.2 若未启动则手动启动:sudo /etc/init.d/mysql restart
2. 远程连接MySQL
2.1 Host ‘XXX’ is not allowed to connect to this MySQL server
错误原因:由于服务器的MySQL绑定仅允许127.0.0.1访问
- 即仅允许服务器本机访问,在 /etc/mysql/mysql.conf.d/mysql.cnf 文件中将 bind-address = 127.0.0.1这一行注释掉即可。
若仍不可,请继续执行2.2步骤。
2.2. 授权开启MySQL远程账号:
grant all PRIVILEGES on db_name.* to uname@‘xxx.xxx.xx.x’ identified by ‘⚫⚫⚫’;
以上命令中:
2.1 db_name:表示数据库名称,✽表所在表。✽.✽即表示所有库的所有表。
2.2 uname:表示授权用户。
2.3 xxx.xxx.xx.x:表示允许远程连接的IP,%为IP不限。
2.4 ⚫:表示密码。
故:下边命令表示允许所有IP访问所有库
grant all PRIVILEGES on *.* to uname@'%' identified by 'pwd';
2.3. 收回MySQL远程root账号权限
use mysql;
delete from user where user="root" and host!="localhost";
flush privileges;
-- 或
use mysql;
revoke all on *.* from ‘uname’@’xxx.xxx.xxx.xxx’;
--uname为账户 xxx.xx.xx.xx填写ip
警告 ⚠ 以下操作需要谨慎,会删除root用户的访问权限,包括本机,若不慎执行,请看步骤2.4
revoke all on . from ‘root’@’%’;
2.4 本地用户被删除的解决办法
- 先停止MySQL服务
service mysql stop
- 在mysql安装目录下找到my.cnf,在其中找到以下[mysqld]段,换行加入skip-grant-tables,如果没有,就都加上,如下:
[mysqld]
skip-grant-tables
- 然后再启动MySQL服务
# 启动MySQL服务
service mysql start
# 重启MySQL服务
service mysql restart
3. MySQL中文支持
使Linux下MySQL,支持中文显示。停止MySQL服务,进入MySQL安装目录下,找到 /etc/mysql/my.cnf 文件,在 [mysqld] 下面添加一行代码 character_set_server= utf8 示例:
[mysqld]
character_set_server=utf8
重新启动MySQL服务,执行 show variables like ‘%char%’; 查看是否已经更改为utf8编码。
三、apache2安装与项目部署
因为我要部署的是JavaWeb项目,所以这里错了🙃。同学们可以略过咯。😁接着往下看就好啦。。。
apache是一个web服务器。但不可以处理war包,因为war属于JavaWeb,需要一个web容器,则需要安装Tomcat与JDK。
1. 安装:sudo apt-get install apache2
2. 配置文件-apache2.conf
路径:/etc/apache2/apache2.conf
3. 部署 /var/www/html
利用Xftp6工具上传项目到路径:/var/www/html
四、安装JDK8
openJDK与OracleJDK对比:简言openJDK是精简版的OracleJDK。
若说的不对还请大佬指教哈哈😀
1. 失误安装openjdk与卸载
我似乎又搞错了🙃可以略过哈。直接看“四-2”安装OracleJDK。。
1. 安装:sudo apt-get install openjdk-8-jdk
2. 卸载:sudo apt autoremove openjdk-8-jdk
2. 安装OracleJDK
2.1 方法一:自动安装
#1. 安装依赖包:
apt-get install python-software-properties
apt-get install software-properties-common
#2. 添加仓库源
sudo add-apt-repository ppa:webupd8team/java
#3. 更新软件包
sudo apt-get update
#4. 安装Java JDK
sudo apt-get install oracle-java8-installer
不知道为何上述方法无效吗,建议使用第二种。😤
2.2 方法二:手动安装
1. 下载Linux版本的JDK。
2. 创建目录:sudo mkdir /usr/lib/jvm
3. 解压jdk到刚刚创建的目录:
sudo tar -zxvf jdk-8u60-linux-x64.gz -C /usr/lib/jvm
4. 修改环境变量:
-
打开配置文件:sudo vi ~/.bashrc
执行以上命令,打开的文件,按i键输入,文件末尾追加如下参数。 -
配置JDK环境:
#set oracle jdk environment 配置jdk环境
## 这里要注意目录要换成自己解压的jdk 目录
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
- 使配置生效:source ~/.bashrc
- 系统注册此JDK:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.0_191/bin/java 300
- 查看是否安装成功:java -version
- 如果你安装了多个版本的jdk,你可以通过以下命令在这些版本之间切换:sudo update-alternatives –config java
五、安装Apache Tomcat 并 部署项目
1. 安装Tomcat
1.1. 官网下载并使用Xftp上传到服务器
https://tomcat.apache.org/download-80.cgi
1.2. 解压安装包到:/usr/tomcat
sudo tar -zxvf apache-tomcat-8.5.53.tar.gz -C /usr/tomcat
2. 配置Tomcat环境
2.1. 先修改一下tomcat文件夹的使用权限,否则可能在当前用户下不能进入bin目录:
cd /usr
sudo chmod 755 -R tomcat
2.2. 进入目录 /usr/tomcat/apache-tomcat-8.5.53/bin,编辑文件startup.sh,在最后一行之前加入如下信息:
#set java environment
## 这里要配置自己的JDK路径
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#tomcat
##这里配置自己的tomcat路径
export TOMCAT_HOME=/usr/tomcat/apache-tomcat-8.5.53
2.3. 保存修改:按ESC > 输入 :wq 保存并退出
2.4. 启动服务:sudo ./startup.sh
若出现 Tomcat started. 表示服务器启动成功!可以在浏览器中输入IP:8080看是否可以进入tomcat首页。这里需要进行端口设置,允许8080端口可访问,参见本文第六节
2.5 关闭tomcat,类似的,需要先在文件shutdown.sh对应位置添加信息:
#set java environment 注意是自己的jdk路径
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#tomcat 注意是自己的tomcat路径
export TOMCAT_HOME=/usr/tomcat/apache-tomcat-8.5.53
##############################################################
##然后执行如下命令即可:
sudo ./shutdown.sh
3. 部署项目
- 在Eclipse中的项目上右击 -> Run As -> Maven install -> 生成war包
- 在target目录下找到test.war文件,并使用Xftp上传到 /usr/tomcat/apache-tomcat-8.5.53/webapps
- 访问xxx.xxx.xxx.xxx:8080/test/index.html进入主页表示部署成功
注:xxx.xxx.xxx.xxx表示IP。8080是端口号,如果更改,请使用更改后的端口号。访问8080端口,需要开放8080端口。参见本文第六节
4. 设置Tomcat开机自启
4.1 编辑文件/etc/rc.local
这里使用的是Ubuntu18.04所以没有故没有 /etc/rc.local 文件!请看步骤4.2
- sudo vi /etc/rc.local
在最后一行之前加入如下信息:(配置你自己的tomcat的startup.sh文件的路径)
#set java environment
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#set tomcat environment
/usr/tomcat/apache-tomcat-8.5.9/bin/startup.sh
- 执行reboot命令,重启系统后,直接访问,如果可以访问,即自启动配置成功!
4.2 Ubuntu18.04没有/etc/rc.local文件
ubuntu18.04不再使用 inited 管理系统,改用 systemd
但是个人认为开机启动的rc.local更加好用,所以可以自己配置rc.local
- 将 /lib/systemd/system/rc-local.service 链接到 /etc/systemd/system/ 目录下面来
ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service - 修改文件内容
sudo vim /etc/systemd/system/rc-local.service - 在文件末尾增加
[Install]
WantedBy=multi-user.target
Alias=rc-local.service
- 创建/etc/rc.local文件
sudo touch /etc/rc.local
Ubuntu较高版本需先执行完此步骤,在执行步骤4.1
六、阿里云服务器端口设置
实例列表 -> 更多 -> 网络和安全组配置 -> 配置规则 -> 添加安全组规则
详细参见本文附录2
终、附录:
1. Ubuntu官方文档 > Ubuntu服务器入门指南
地址:https://wiki.ubuntu.org.cn/Ubuntu服务器入门指南
2. 阿里云云服务器 ECS > 安全 > 安全组 > 安全组应用案例
地址:https://help.aliyun.com/document_detail/25475.html?spm=5176.2020520101.121.1.40104df5JHG0XU#title-xop-g99-q4u
3. 参考:Ubuntu 16.04下安装Tomcat 8.5.9–https://www.linuxidc.com/Linux/2017-06/144809.htm
本文来自博客园,作者:Huathy,遵循 CC 4.0 BY-NC-SA 版权协议。转载请注明原文链接:https://www.cnblogs.com/huathy/p/17253900.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程