详细部署阿里云服务器全过程(图文教程)
作者:MACRosshaha 发布时间:2023-07-20 03:43:54
最近学习了Web开发前后端等技术,便想着将项目部署到云服务器,方便后续管理,顺便学习一下部署云服务器的过程。
购买与连接云服务器
部署云服务器,首先需要的便是购买云服务器,这里我选择的是阿里云服务器,注册实名认证这里就不详细说明了,我购买的是云服务器ECS,可以选择大学生优惠,一个月9.5元,算是很实惠的。
我选择的操作系统是Linux版的 centos_7_03_64,后续还可以自己去购买一个域名。
购买完之后可以点击图里的更多进行重置密码,我这里已经重置过了,就不给大家演示了。
接下来就是管理云服务器,我电脑是Windows系统,选择的是XShell和Xftp,官方网址我放到下方了,
官方网址:https://www.netsarang.com/zh/all-downloads/
参加公测版就可以免费使用,推荐选择学校的企业邮箱注册,首次下载也可以免费试用30天。
下载完打开软件新建会话,填写ip地址就可以连接到云服务器
部署云服务器
连接云服务器之后,就可以开始部署云服务器了,由于部署的是Web项目,这里我分成三部分:Tomcat,JDK,MySQl(或者其他数据库,这里以MySql为例),前两部比较简单,主要是数据库的部署有些麻烦。
Tomcat
首先去apach官网下载Tomcat,网址我放到了下方
http://tomcat.apache.org/download-80.cgi,注意下载的版本和后缀,Linux选择tar.gz
下载完之后使用Xftp上传到云服务器,然后进行解压:
等待解压完成后,进行Tomcat环境的配置,这里我们需安装JDK。
JDK
还是跟Tomcat一样,先去官网下载安装包。
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html,注意看清操作系统。
下载完之后,进行解压
解压完之后就可以配置JDK环境
#vi /etc/profile
export JAVA_HOME=/root/Java/JDK/jdk1.8.0_161
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}
#souce /etc/profile使配置生效,这样JDK的环境便配置完成。可以通过Java -version查看是否配置成功。
接下来进去Tomcat的bin目录
#vi setclasspath.sh
export JAVA_HOME=/root/Java/JDK/jdk1.8.0_161
export JRE_HOME=/root/Java/JDK/jdk1.8.0_161/jre
保存之后启动Tomcat,./startup.sh
启动完成后便可以访问tomcat,浏览器输入http://+云服务器ip地址+:8080(默认是8080端口)
如果出现Tomcat界面,便表示tomcat启动成功。
如果访问不了的,首先查看云服务器的8080端口是否开放,在左侧选择 网络安全》安全组
点击配置规则
自定义添加8080端口,这里具体操作就不讲了,很简单。
MySql
第一步:安装MySql
下载MySql安装包
可以选择
[root@localhost ~]#rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
或者
[root@localhost ~]# rpm -ivh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
安装MySql
[root@localhost ~]# yum install -y mysql-server
或
[root@localhost ~]# yum install mysql-community-server
安装成功的话会显示Complete
第二步:设置开机自启动服务
[root@localhost ~]# systemctl enable mysqld.service
检查是否设置开机自动:
[root@localhost ~]# systemctl list-unit-files | grep mysqld
第三步:登陆Mysql
查看初始化密码:
[root@localhost ~]# grep 'temporary password' /var/log/mysqld.log
这一步要注意了,如果显示查找不到密码,原因是之前的Mysqsl卸载不干净或者安装出了问题,会导致登录失败,可以参考下面的博客进行卸载。
CentOS 7 卸载MySQL 5.7
[root@localhost ~]# mysql -u root -p
然后输入刚才查看的密码
第四步:修改Mysql登录密码
这里需要注意了,Mysql为了安全考虑,对密码的安全性有严格要求,输入不符合要求的密码会导致更改失败,这里我们需要修改策略:
设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW 即可,
输入设值语句 “ set global validate_password_policy=LOW; ” 进行设值
然后再进行密码修改:
mysql>SET PASSWORD = PASSWORD('*****');
出现Query OK,表示修改成功!
第五步:授权远程登录:
为了更好的管理Mysql数据库,可以授权开启远程登录
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '****' WITH GRANT OPTION;
这里的*****要换成你自己mysql数据库的密码
命令生效指令:
mysql>flush privileges;
这一步一定要做,不然无法成功! 这句表示从mysql数据库的grant表中重新加载权限数, 因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。
设置这一步的原因是Mysql为了安全考虑,初始的时候并没有开启Root用户,这里的Root用户要和云服务器的root用户分开,当开启了Mysql的Root用户后,便可以提供远程访问权限,实现远程管理,这里我使用的软件是Navicat。
首先去阿里云开放3306端口:
然后打开Navicat新建连接:
没问题的话应该就可以连接上了,有问题的看下前面的步骤哪一步漏了。
第六步:将本地数据库转移到云服务的数据库
转移之前首先要先设置好Mysql数据库的编码与本地的数据库一致,不然后面会出现一些问题,之前在这方面栽了很久,建议在一开始先设置好。
[root@localhost ~]# mysql -u root -p
mysql>show variables like 'char%';
主要看character_set_server是不是utf-8,不是的话可能导入数据的时候可能会出现中文乱码的情况,
可以通过
mysql>set character_set_server=utf8;
进行修改,不过这种方法重启Mysql之后就会失效,建议使用一下方式修改:
[root@localhost ~]#vim /etc/mysql/mysql.conf.d/mysql.cnf
这里需要注意的是如果没有该文件的话尝试下面这个,我就是出现了这个问题,修改下面这个文件同样可以生效
[root@localhost ~]#vim /etc/my.cnf
在[mysqld]下面添加一行 character_set_server=utf8
重启Mysql服务使配置生效:
[root@localhost ~]#service mysql restart
然后便可将本地数据库转移到云服务器的数据库:
先创建一个数据库用于存放表:create databases ****;
然后再Navicat软件选中本地数据库的表,右键导出向导,可以选择很多种格式,点击下一步,后面选择默认选项就ok,这里我已经导出过了,就不一一演示了。
然后在云服务器的数据库选择导入向导:
选择刚才导出的文件,没问题的话数据库导入便处理完成。
总结
Tomcat,JDK,Mysql配置完成,部署配置云服务器基本完成,本次博客也是总结了其他很多优秀博主的博客,算是一次整合,也有自己的总结经验在里面,希望可以帮到大家。如果遇到问题的话可以在评论区留言讨论。
后面会更新如何将自己的项目打包部署到云服务器(IDEA软件为例),这里也会总结一下自己遇到的一些坑,下周末前会更新,我的博客有一些学习JavaWeb开发的笔记,目前更新了JavaWeb基础和MyBatis的学习笔记,后续会更新Spring全家桶的学习笔记,有兴趣的可以关注一下。
最后附上我一个正运行在云服务器的一个项目截图:
来源:https://blog.csdn.net/MACRosshaha/article/details/106699249


猜你喜欢
- 据国家教育部统计,截至2009年7月1日,我国普通高校毕业生就业率为68%,约有200万毕业生未实现顺利就业。“我们作为
- 最近,有很多客户加我,叫我帮他们做个简单的HTM页面,但却都是免费的。而我说明,我们改程序都是收费的,他们却很不乐意,觉得我是利欲熏心,做什
- Apache是运行在Linux操作系统上的头号Web服务器。很多小地方都可以用来调整Apache的性能,并降低它对系统资源的影响。其中一个就
- 校内网在发blog时对插入图片过滤不严格,存在xss漏洞在发blog时将插入图片URL写为如下代码即可触发:javascript:windo
- 前言对于开发者来说,安装jdk按理说是非常简单的事,但在linux下安装着实费了我这个一直玩windows的小白不少劲。这里简单把步骤梳理下
- 泛搜索时代,我在考虑了很久后才决定用“泛搜索”这样一个词来表达我的想法,这个泛有广泛的意思。泛搜索即搜索已经无处不在,并不仅仅局限于传统的通
- 最近因为比较清闲,不断有朋友问关于网站制作、运营和推广方面的问题,基本上所有人都有一个很兴奋的表情,大谈他们关于想做的网站的内容,绝大多数人
- 套接字是一种通信机制,凭借这种机制,客户/服务器系统的开发工作既可以在本地单机上进行,也可以跨网络进行。套接字的特性有三个属性确定,它们是:
- 目录Shell脚本中$符号的几种用法1.1 引用变量1.2 引用脚本或函数参数1.3 上条命令的返回值1.4 执行并获取命令输出1.5 表达
- 需求是:某测试站点,在某个节点的时候需要同步到正式站点去,但是里面的config目录不能覆盖, 方法一:终端命令行下执行以下命令 cp -R
- 1.在百度提交网址 但现在百度自动收录的速度已经让众人所知,所以提出以下的方法。供我亲爱的朋友们、战友们以及我核心团队的兄弟姐妹们参考,最后
- 傻瓜才花钱买没有价值的流量从最初的饱受质疑到如今逐渐走上正轨,谷歌中国打破了跨国公司在华总是失败的魔咒。日前,谷歌大中华区总裁李开复在广州对
- 核心提示: 何时执行目标导向内容优化战略?当你确定目标,并有耐心评估网站表现时,这一战略就起作用。当然,这一过程可能花一些时间,需要不断进行
- 本文主要简单介绍 docker 容器与前置进程的关系,以及如何编写 Dockerfile/docker-compose.yml 优雅的让容器
- 老马说,你现在混日子,小心将来日子混了你。我们中的很多站长都在混日子,也许,我们仿佛找到了理想,伸出一把手却又没有抓住,一点感觉都没有似的。
- 1、前言apache+resin来做想来大家都比较熟悉了,一般的配置都是很熟悉的了,我查看了一些论坛上的文章,这方便的文章比较多。在这里,我
- GoDaddy主机用户在购买、建立、管理托管帐户过程中,创建了多个帐户来登陆与其托管网站有关的不同界面。每个帐户都由一个用户名及密码来保护。
- 1.停库[oracle@testdb ~]$ sqlplus / as sysdbaSQL> shutdown immed
- Apache需要设定成虚拟网站空间方式。新版SuSE的Apache已经改成模组化。所以只要修改几个档案就可以在建立帐号时,网站就对应的到位置
- 百度知道在9月25日发公告表示,部分“分类管理员”开始试用转移问题分类权限。今天,我们找到了两张转移