项目部署-Linux本地部署&华为云远程部署
1. Linux本地部署cms; (掌握)
2. 华为云简介; (了解)
3. 华为云(ECS)远程部署cms; (掌握)
1.检测系统自带的jdk安装包,这个openjdk也是可以直接使用的
[root@localhost ~]# rpm -qa|grep java 或者 [root@localhost ~]# rpm -qa|grep jdk
原因:之前在安装linux时,安装的是带桌面的,所以这里有openJDK
2.如何删除自带的openjdk:
[root@localhost ~]# rpm -e --nodeps opeanjdk的包名 参数说明: -e:删除包 --nodeps: 忽略软件包的依赖关系强行安装
3.也可以安装我们上传的的JDK,安装步骤如下:
第一步:由于linux中安装程序一般安装在/user/local下:
[root@localhost ~]# cd /usr/local
第二步:将安装包 jdk-8u151-linux-x64.tar.gz解压解压到/usr/local/目录中:
[...]# tar -zxvf /usr/local/src/jdk-8u151-linux-x64.tar.gz -C /usr/local/
第三步:配置环境 vi /etc/profile,在export语句下面添加:
[root@localhost local]# vi /etc/profile
注意:按键盘上的i(input)键进入编辑模式,按住Ctrl+C退出编辑模式,然后输入:wq!保存并退出
export JAVA_HOME=/usr/local/jdk1.8.0_151 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin
第四步:配置环境变量生效:
[root@localhost local]# source /etc/profile
测试安装效果:java -version
注意:有的时候复制不起效果,需要手敲,例如vi /etc/profile;
1.如果是解压源码包安装方式,则需要使用xftp或其他工具将安装包 mysql-xxx.tar.gz上传至linux系统。推荐两个位置:/usr/local/src、/opt(这里以/usr/local/src为例);
2.以下使用的是rpm包安装;
1.查看当前安装mysql情况:
[root@localhost ~]# rpm -qa|grep -i mysql 参数说明: rpm:RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”-qa|grep -i mysql:[搜索指定rpm包是否安装] -all搜索*mysql* -q就是 --query ,-a就是--all, |grep mysql就是查含有mysql的包名(grep正则表达式) -i, --install install package(s) -- 可以省略
2.删除之前安装的rpm -e --noscripts 包名,如果出现有报错有依赖,可以加上–nodeps,即:
[root@localhost ~]# rpm -e --noscripts 包名 --nodeps 参数说明: -e:删除包 --noscripts: 忽略RPM包的脚本执行
3.查找之前老版本mysql的目录、并且删除老版本mysql的文件和库:
[root@localhost ~]# find / -name mysql
4.删除对应的mysql目录:
[root@localhost ~]# rm -rf 上面的目录
5.再次查找机器是否安装mysql,如果没有就说明卸载干净了:
[root@localhost ~]# find / -name mysql [root@localhost ~]#
注意:这种安装需要下载,所有需要联网,如果网速不好会导致安装失败,所以安装之前建议先快照,mysql安装失败之后可以恢复到指定的快照版本,重新来一次;
第一步:切换到/usr/local
[root@localhost ~]# cd /usr/local
第二步:下载mysql的rpm源码包
[root@localhost local]# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
注意:在什么地方下载就要在那个目录中执行安装,否则提示找不到rpm包,安装完后将rpm包删除
第三步:安装mysql-community-release-el7-5.noarch.rpm包
[root@localhost local]# rpm -ivh mysql-community-release-el7-5.noarch.rpm 参数说明: -ivh:安装显示安装进度--install--verbose--hash
第四步:安装mysql
[root@localhost local]# yum install mysql-server
注意:如果出现进程被占用,可以使用kill -9 进程ID
第五步:启动mysql服务
[root@localhost local]# systemctl start mysqld
附:
查看Mysql状态:systemctl status mysqld 或者 service mysqld status
开启mysql服务:systemctl start mysqld 或者 service mysqld start
关闭mysql服务:systemctl stop mysqld 或者 service mysqld stop
重启mysql服务:systemctl restart mysqld 或者 service mysqld restart
第六步:Mysql安装成功后,默认的root用户密码为空,你可以使用以下命令来设置root用户的密码:
[root@localhost local]# mysqladmin -u root password "你自己想设置的数据库密码"
第七步:连接到Mysql服务器(多种方式 – 密码可以点击回车之后再输入也行)
[root@localhost local]# mysql -uroot -p你刚刚设置的密码 [root@localhost local]# mysql -h127.0.0.1 -uroot -p你刚刚设置的密码 [root@localhost local]# mysql -hlocalhost -uroot -p你刚刚设置的密码 [root@localhost local]# mysql -h本机ip地址 -uroot -p你刚刚设置的密码
注意:如果提示没有wget命令,可以使用以下命令下载wget命令: yum -y install wget
1.安装完的MySQL的默认字符集为 latin1 ,那么如果此时创建表和数据库,或者导入外部带中文的数据,mysql是不支持的。为了要将其字符集改为用户所需要的(比如utf8),就必须改其相关的配置文件;
2.查看默认字符集:
mysql> show variables like 'character_set%';
3.修改字符集,修改 /etc/my.cnf文件(输入exit或Ctrl + C退出mysql命令窗口):
[root@localhost local]# vi /etc/my.cnf(没有就自己创建一个,vi会自动创建)
注意:如果my.cnf存在,那么就在[mysqld]处将下面的配置拷贝进去,并删除原来的[mysqld],因为配置中存在一个,不能有两个;
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] character-set-server=utf8
4.退出编辑模式,保存并退出,重启mysql(按Ctrl + C 退出编辑,退出编辑输入:wq!退出编辑器)
[root@localhost local]# systemctl restart mysqld
注意:如果重启卡住,很有可能是你my.cnf中出问题了,重新编辑,或者从其他人那里拷贝一个;
5.再次连接mysql,查看字符集编码
[root@localhost local]# mysql -uroot -p你刚刚设置的密码 mysql> show variables like 'character_set%';
1.上一步即可本地登录,但远程登录会报错:
2.为了解决这个问题,允许远程访问,需要本地登陆MySQL后执行如下命令:
第一步:进入mysql,授权远程连接
mysql> grant all privileges on *.* to root@'%' identified by '123456'; 这句话的意思是:任意用户使用root用户使用123456密码访问,可以设置成mysql的密码
第二步:刷新授权
mysql> flush privileges;
注意:这步是在window上使用数据库的可视化工具(navicat和mysqlworkbench)连接linux的mysql,需要关闭防火墙(参考上面的文档);
1.使用xftp或其他工具将安装包 apache-tomcat-x.x.xx.tar.gz上传至linux系统;
(1)推荐两个位置:/usr/local/src、/opt(这里以/usr/local/src为例)
2.安装步骤如下:
第一步:将安装包 apache-tomcat-x.x.xx.tar.gz解压解压到/usr/local目录中:
[...]# tar -zxvf /usr/local/src/apache-tomcat-8.5.15.tar.gz -C /usr/local/
开启服务和关闭服务:
[root@localhost ~]# cd /usr/local/apache-tomcat-8.5.15/bin [root@localhost bin]# ./startup.sh [root@localhost bin]# ./shutdown.sh
3.解压文件中目录结构如下:
(1)bin目录:tomcat启动命令(./startup.sh)、tomcat服务关闭命令(./shutdown.sh )
(2)webapps目录:工程目录,war包放在这里,在启动tomcat时会自动解压成文件夹
4.利用xftp工具将cms.war包传入到linux的tomcat中的webapps文件夹中
注意:放入war包之后要重启tomcat服务,远程访问tomcat的程序,需要关闭防火墙
1.在eclipse中将工程导出war包(export - 输入web - 里面有war包)
2.使用xftp或其他工具将安装包war包上传至linux系统:
(1)推荐两个位置:/usr/local/src、/opt(这里以/usr/local/src为例)
(2)或者直接上传至tomcat的webapps目录中
3.最终将war包拷贝到tomcat的webapps目录中
[... bin]# mv /usr/local/src/cms.war /usr/local/apache-tomcat-8.5.15/webapps
4.启动Tomcat服务,首先要切换至tomcat目录的bin目录中
[root@localhost bin]# ./shutdown.sh [root@localhost bin]# ./startup.sh
5.浏览器测试:localhost:8080测试
6.宿主机(window系统)测试:
(1)使用xshell连接到linux,然后通过这个工具操作linux系统
(2)需要关闭linux的防火墙
1.连接mysql
[root@localhost /]# mysql -hlocahost -uroot -proot [root@localhost bin]# mysql -h127.0.0.1 -uroot -proot [root@localhost bin]# mysql -hlinux的ip地址 -uroot -proot 注意:下面这条语句必须进入mysql,授权远程连接,并刷新授权才行(参考上面的指令)
2.导入外部文件
[...]# mysql -h127.0.0.1 -uroot -proot cms < /usr/local/src/cms.sql
注意:window中导出。Sql文件可以使用工具和命令,命令是在命令提示符中输入:
[...]# mysqldump -h127.0.0.1 -uroot -proot cms > 桌面路径/cms.sql
1.华为云成立于2011年,隶属于华为公司,在北京、深圳、南京、美国等多地设立有研发和运营机构;
2.网址:https://www.huaweicloud.com/,主要业务:
3.虽然华为云提供的云服务很多,现在我们只了解云主机(ECS);
1.购买网址:
https://console.huaweicloud.com/ecm/?region=cn-east-2#/ecs/createVm
2.按流程购买,购买完成后,会有一个云的管理界面,在里面就可以管理我们租用的服务器(实例 – 一个安装了linux系统的主机)了,进入管理界面:
(1)按需计费(按小时计费):
(2)CPU选择:
(3)系统选择:
(4)数量选择以及费用查看:
(5)网络配置:
(6)宽带选择:
(7)设置root用户密码:
(8)查看购买的云服务器:
(9)登录linux系统:
注意:如果是按需购买,按小时计费,即使关闭了云服务器,也会计费:
1.操作华为云和操作我们虚拟机centos系统一样的,都需要通过远程操作和上传:
注意:远程操作华为云服务器需要关闭防火墙,具体操作请参考:7.3.4 CentOS防火墙操作
1.Ssh:xshell,putty等(远程连接,类似windows远程桌面)
2.Sftp:xftp,winscp等(上传文件)
3.组合:putty winscp或Xmanager(xshel,xftp等)
注意:远程操作ECS和操作本地linux系统的CentOS是差不多的,不一样的是要操作ECS的mysql,tomcat时需要配置白名单,否则远程是连接不上对应的程序的;
(1)找到安全组
(2)找到相应实例(ECS)的安全组,点击配置规则
(3)添加规则,在协议端口处添加tomcat的默认端口8080,mysql的默认端口3306即可;
1.单独部署mysql+tomcat等组件,比较麻烦,要是能一键式部署就好了。的确有,有一个开源的一键式安装php/java运行环境OneinStack;
1.http://oneinstack.com/ – 点击【交互安装】,按照操作步骤安装完成;
2.一键式安装php/java运行环境(对jdk、mysql、tomcat、nginx等参数做了优化配置);
3.注意:默认软件都是安装在/usr/local下(mysql、tomcat、redis等),jdk在/usr/java中
第一步:安装wget屏幕
[root@ecs-4229 /]# yum -y install wget screen 注意:在不同的系统中命令不一样 yum -y install wget screen #for CentOS/Redhat # apt-get -y install wget screen #for Debian/Ubuntu
第二步:下载oneinstack包
[root@ecs-4229 /]# cd /usr/local/src/ [root@ecs-4229 src]# wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz 注意:#包含源码,国内外均可下载
第三步:解压oneinstack包
[root@ecs-4229 src]# tar -zxvf oneinstack-full.tar.gz -C ./ [root@ecs-4229 src]# cd /usr/local/src/oneinstack/ [root@ecs-4229 oneinstack]#
第四步:安装软件
[root@ecs-4229 oneinstack]# ./install.sh
注意:
1.下图太小,建议参考官网【交互安装】处,需要什么软件安装什么软件(tomcat、mysql(需要设置密码),jdk等,ssh(默认端口22));
2.默认会将软件安装在/usr/local下,安装过程大概十到三十分钟不等,跟网速有关,需要的软件就安装,不需要的就不安装;
注意:第二项iptables可以不用开启,因为有了安全组,如果开启之后需要,需要通过命令放开3306:
[root@ecs-7ee6 ~]# iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT -- 添加允许访问3306端口 [root@ecs-7ee6 ~]# service iptables save -- 保存iptables规则
[root@ecs-4229 /]# cd /usr/local/tomcat/conf [root@ecs-4229 conf]# mv server.xml ./server.xml_stack [root@ecs-4229 conf]# mv server.xml_bk ./server.xml
1.Linux本地部署CMS;
2.华为云(ESC)远程部署CMS;
1.Linux本地部署CMS;
2.华为云(ESC)远程部署CMS;
1.参考文档;
2.多试几次;
解决方案:kill -9 加需要关闭的进程ID,然后重新安装即可;
1.Linux本地部署CMS;
2.华为云(ESC)远程部署CMS;