使用的vps是搬瓦工的,域名是goddy买的。
1.登陆搬瓦工的控制台,安装操作系统为centos6
2.首先下载SSH工具SXHell5远程连接服务器的公网IP,密码有搬瓦工提供,动态更新。
3.Javaweb环境
配置jdk1.8
a.下载
wget --no-cookie --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-linux-x64.rpm -O jdk-8u102-linux-x64.rpm
b.安装
rpm -ivh jdk-8u102-linux-x64.rpm
配置tomcat7 通过Yum在CentOS 7上安装Apache Tomcat 7
a.下载
yum install tomcat
b.安装管理界面 ,以便默认Tomcat页面上的所有链接都可以正常运行
yum install tomcat-docs-webapp tomcat-javadoc
c.快速更改Tomcat在启动时使用的Java选项。打开Tomcat配置文件:
sudo vi /usr/share/tomcat/conf/tomcat.conf
以JAVA_OPTS下行添加到文件。随意更改Xmx和MaxPermSize值 - 这些设置会影响Tomcat将使用多少内存:
JAVA_OPTS="-Djava.security.egd=file:/dev/./urandom -Djava.awt.headless=true -Xmx512m -XX:MaxPermSize=256m -XX:+UseConcMarkSweepGC"
d.如果您希望Tomcat在每次启动服务器时运行,则需要启用服务:
sudo systemctl enable tomcat
e.重启tomcat/启动命令类似
sudo systemctl restart tomcat
安装MySQL数据库
a.下载rpm包
yum install http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
yum repolist enabled | grep "mysql.*-community.*"
yum install mysql-community-server
systemctl start mysqld
b.登录MySQL服务,因为刚安装后的MySQL服务root用户密码为空
mysql -u root
update user set password("自定义密码") where User = 'root';
flush privileges;
停止MySQL服务
service mysqld stop
/etc/init.d/mysql stop
MySQL配置文件位置 # /etc/my.cnf:
删除Mysql
yum remove mysql mysql-server mysql-libs mysql-server;
find / -name mysql 将找到的相关东西delete掉;
rpm -qa|grep mysql(查询出来的东东yum remove掉)
项目发布
1.设置tomcat
a.修改tomcat的web.xml文件,添加<users><users/>用户并设置密码。
b.修改默认端口为80端口。
c.上传war。方法有两种。
c.1(简单) 登陆tomcat主页(主机地址xxx.xxx.xxx.xxx)选择manager管理页面,可以热部署新的项目,选择本地war上传即可部署成功。
c.2(推荐) 首先Linux安装rz,sz工具 ** windows端需要支持ZModem的telnet/ssh客户端(xshell支持,好像putty不支持),SecureCRT就可以用SecureCRT登陆到Unix/Linux主机(telnet或ssh均可)**
c2.1 yum install lrzsz -y
c2.2 rz(选择文件上传到Linux的当前目录,提前cd到tomcat的webapp目录)
d.重启服务器即可启动成功。
2.Linux设置
# systemctl start firewalld 开启防火墙
# firewall-cmd --zone=public --add-port=80/tcp --permanent 开启端口
3.域名设置
登陆goddy,进入域名管理界面。添加A记录为公网IP地址,等待几分钟,即可成功访问站点。
其他
常用Linux命令记录
查看Linux系统主机名:hostname
# netstat -lntp #查看监听(Listen)的端口
# netstat -antp #查看所有建立的TCP连接
# iptables -L #查看防火墙规则
查看当前目录所有文件:ls -a
创建文件夹:mkdir xxx.yy
删除文件夹:rm -rf /var
XShell Ctrl+q解锁命令行
# top -n1 显示任务管理器信息(非常多)
开启端口 # firewall-cmd --zone=public --add-port=80/tcp --permanent
kill -n pid 关于MySQL5.6无法杀死进程问题
其实就是unix系统给指定的pid的进程发送信号的一个过程.只是其中一个信号,程序执行阶段捕获到自己的信号就会做出响应的反应.当然程序也可以忽略一部分信号,“信号”是指那些被异步发送到一个程序的事件。默认情况下,它们通常会终止一个程序的运行。
进程中的MySQL-safe会时刻检测MySQL是否运行,如果没有则会自动启动,所以kill MySQL会无效。正常命令关闭即可。
free 查看可自由使用的剩余内存。
分析CPU占用的方法和手段:
top命令:可以查看实时的CPU使用情况。
ps -ef命令:可以查看进程以及进程中线程的当前CPU使用情况以及属于当前状态的采样数据。
jstack:Java提供的命令。可以查看某个进程的当前 线程栈运行情况。根据这个命令的输出可以定位某个进程的所有线程的当前运行状态、运行代码,以及是否死锁等等。
pstack:Linux命令。可以查看某个进程的当前线程栈运行情况
未解决问题
MySQL内存占用居高不下,启动就占了400m+
修改my.cnf设置为以下几乎无效,并没有达到网上说的几十M的地步,仍待研究。
performance_schema=OFF
key_buffer_size=16M
query_cache_size=16M
tmp_table_size = 16M
innodb_buffer_pool_size = 8M
innodb_additional_mem_pool_size = 1M
网友评论