详细部署阿里云服务器全过程(图文教程)
最近学习了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,注意下载的版本aarpaaHYG和后缀,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 JaarpaaHYGAVA_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启动成功aarpaaHYG。
如果访问不了的,首先查看云服务器的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全家桶的学习笔记,有兴趣的可以关注一下。
最后附上我一个正运行在云服务器的一个项目截图:
到此这篇关于详细部署阿里云服务器全过程 的文章就介绍到这了,更多相关部署阿里云服务器内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341