解析文件:./startup.sh 启动tomcat ./shutdown.sh 关闭tomcat
service tomcat stop停止tomcat服务
service tomcat start启动tomcat服务
添加端口(–permanent永久生效,没有此参数重启后失效)
firewall-cmd --add-port=8080/tcp --permanen
在Xshell安装rz命令
服务器安装rz与sz命令:
yum install lrzsz
、准备JDK文件 可以去官网下载例如
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.x86_64rpm -e --nodeps java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.x86_64这些类型
:检查之前版本;rpm -qa | grep java2:卸载之前安装所有;rpm -e --nodeps java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.x86_64rpm -e --nodeps java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.x86_64
注:一定要将mariaDB包和自带mysql包卸载干净,否则安装时出现各种奇妙错误,导致失败。
#rpm -qa | grep -i mariadb //查询安装的MariaDB
#rpm -e --nodeps 上面查到软件名 //卸载相关MariaDB的所有软件
找到的依赖要自己打,不可以填充
#find / -iname mariadb或者whereis mariadb 查找是否有相关配置目录及文件,如有,则 rm -rf 删除
卸载已有MySQL
//卸载旧版本的Mysql
rpm -qa | grep -i mysql //查看有没有安装mysql
rpm -e MySQL-client-5.6.38-1.el7.x86_64 //如果有,卸载旧版本Mysql及相关依赖包
//删除服务
chkconfig --list | grep -i mysql //查看服务
chkconfig --del mysql //删除服务
//删除mysql分散的文件夹
whereis mysql //查出相应的mysql文件夹,也可以用find / -name *mysql*
rm -rf /use/lib/mysql //删除
注:先装好依赖,再装mysql。即使顺序出错,装完依赖一定要卸载mysql并重新装mysql,否则mysql装上了也会出现各种错误。
yum -y install autoconf
将mysql的服务和客户端的rpm包放到opt目录下
安装的命令 #rpm -ivh MySQL-server-5.6.27-1.linux_glibc2.5.x86_64.rpm //-i是安装,-v是列出更多详细信息,-h是在安装时列出hash标记
安装一下三个就行:
MySQL-client-5.6.51-1.el7.x86_64
MySQL-server-5.6.51-1.el7.x86_64
MySQL-devel-5.6.51-1.el7.x86_64
也可以去根目录
mysqld_safe --user=root --skip-grant-tables --skip-networking & //绕过密码登录,mysql未启动前设置
service mysql start //启动mysql
mysql -u root -p //登录
use mysql //切换数据库
UPDATE user SET password=password("123456") WHERE user='root'; //修改密码
quit //退出
#service mysql restart //重启mysql服务
#mysql -u root -proot // -proot,p代表password,root是密码
>use mysql //切换数据库
>set password = password('123456'); //第一次登陆必须修改mysql密码
>flush privileges; //刷新权限
>grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
>flush privileges;//刷新权限
>quit //退出
# mysql service mysql restart //重启mysql
再root登陆mysql,重新设置一遍root的密码
//查看firewall状态(runing:运行,not runing:没有运行),如果没有运行,用systemctl start firewalld启动
firewall-cmd --state
firewall-cmd --permanent --zone=public --add-port=3306/tcp //添加3306端口
firewall-cmd --reload //重新加载firewall
#chkconfig mysql on //开启MySQL服务自动开启命令
修改数据库配置文件my.cnf
具体如下:
# The following options will be passed to all MySQL clients
[client]
# #password = [your_password]
port = 3306
#`socket = /tmp/mysql.sock
# # #
# # # The MySQL server
# # #
[mysqld]
#
# #设置密码复杂度
# plugin-load-add=/usr/lib64/mysql/plugin/validate_password.so
# #如果是windows设置密码复杂度
# plugin-load-add=validate_password.dll
#
port = 3306
# bind-address= 0.0.0.0
#socket = /tmp/mysql.socks
# datadir = /home/mysql-data/mysql_data
# tmpdir = /home/mysql-data/mysql_data/tmp # 为了提高效率 直接使用内存 来存放临时文件
# pid-file = /home/mysql-data/mysql_data/mysql_db.pid
# ######basedir = /usr/local/mysql5.6.25 #bin路径 一般不该
character-set-server=utf8
lower_case_table_names=1
# #skip-locking #新版skip-external-locking
# skip-external-locking
# skip-host-cache
# skip-name-resolve
#
# wait_timeout=3600 # 8 hour
# #interactive_timeout=4233600
max_connections = 3000
max_connect_errors = 30
# #table_cache = 614 #给经常访问的表分配的内存,物理内存越大,设置就越大。5.6不支持哈
# table_open_cache = 4096 #设置表高速缓存的数目,如果Opened_tables数量过大,说明配置中table_open_cache的值可能太小
max_allowed_packet=2G
# binlog_cache_size =4M
# max_binlog_size = 500M
# max_binlog_cache_size=128M
# tmp_table_size = 128M
# max_heap_table_size = 512M
# join_buffer_size=64M
# sort_buffer_size=64M
# read_buffer_size=8M
# thread_cache_size=64 #Threads_created如果此值过大,则说明线程池太小,需要调大线程池:thread_cache_size,建议和连接池相当
# #thread_concurrency = 4 #thread_concurrency应设为CPU核数的2倍 这个参数到5.6版本就去掉了
# query_cache_type=0 #建议关闭 0
# query_cache_size=64M
# query_cache_limit = 4M
# long_query_time=4
# log-queries-not-using-indexes #没有使用索引的查询也会被记录
# slow_query_log=0
# slow_query_log_file=/home/mysql-data/mysql-log/mysql-slow.log
# open_files_limit=65535
# optimizer_switch=engine_condition_pushdown=on #控制mysql优化器行为
# back_log=500
# memlock
# explicit_defaults_for_timestamp=true #列TIMESTAMP未声明为NULL的默认行为
# ft_min_word_len=1
# #*** INNODB ***
# innodb_buffer_pool_size =2G #memory 60-80% 不超过数据大小
# #innodb_buffer_pool_instances = 8 #此设置待进一步优化
# innodb_data_file_path = ibdata1:1G:autoextend #初始化才使用 千万不要用默认的10M,否则在有高并发事务时,会受到不小的影响;
# innodb_file_io_threads = 8
# innodb_thread_concurrency = 16 #几个CPU就设置为几
# innodb_flush_log_at_trx_commit = 2 #合理选择LOG刷新机制,主一般设置为1或者2,从库可以设置0. 1最安全,2较好性能,0最好性能
# innodb_log_buffer_size = 16M
# innodb_log_file_size = 256M
# innodb_log_files_in_group = 2 #循环方式将日志文件写到多个文件
# innodb_max_dirty_pages_pct = 90
# innodb_lock_wait_timeout = 120
# innodb_file_per_table = 1 #InnoDB为独立表空间模式,0关闭,1开启
# #innodb_force_recovery=1 #InnoDB re
# #innodb_fast_shutdown #加速InnoDB的关闭
# #innodb_data_home_dir =
# #innodb_log_group_home_dir=
# #innodb_flush_method=O_DIRECT #OLTP 设置InnoDB同步IO的方式:
# 如果要使用innodb,添加下面这些参数
# innodb_buffer_pool_size =128M
# innodb_data_file_path = ibdata1:128M:autoextend
# innodb_file_io_threads = 4
# innodb_thread_concurrency = 8
# innodb_flush_log_at_trx_commit = 2
# innodb_log_buffer_size = 16M
# innodb_log_file_size = 256M
# innodb_log_files_in_group = 2
# innodb_max_dirty_pages_pct = 90
# innodb_lock_wait_timeout = 120
# innodb_file_per_table = 1
# sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
# #*** GTID log ***
# #sync-master-info=1
# #master-info-repository=TABLE
# #relay-log-info-repository=TABLE #slave on
# #binlog-checksum=CRC32
# #master-verify-checksum=1
# #slave-sql-verify-checksum=1 #slave on
# #binlog-rows-query-log_events=1 # log be good for ROW
# #slave_allow_batching = 1 #slave on
# #***master-salve***
# server-id=1
# log-bin=mysql-bin
# log-bin=/home/mysql-data/mysql-log/mysql-bin
# log-bin-index=/home/mysql-data/mysql-log/mysql-bin.index
# #relay-log=/home/mysql-data/mysql-log/relay-bin
# #relay_log_index =/home/mysql-data/mysql-log/relay-bin.index
# log_error=/home/mysql-data/mysql-log/mysql-error.log
# binlog-format=mixed #GTID use ROW other is mixed
# #slave-parallel-workers=4 #多从库复制
# #relay_log_purge = 1 #Automatic repair relay
# #relay_log_recovery = 1 #Automatic repair relay
# #log_slave_updates=1 #slave on master off 是否把所有的操作写入到binary log
# sync_binlog = 1 #主从同步建议打开,负载高可以关闭
# #slave-skip-errors=all
# ###binlog-do-db=syslog
# ###binlog-ignore-db=mysql
# ###replicate-do-db=syslog
# ###replicate-ignore-db=mysql,test
# expire_logs_days = 7 #auto del log
# #***GTID config ***
# #gtid-mode=on
# #enforce-gtid-consistency = true
# #report-port=3306
# #report-host=192.168.88.7 #ues localhost IP
# #***end*****
[mysqldump]
quick
max_allowed_packet = 2000M
[mysqld_safe]
open-files-limit = 8192
[mysql]
no-auto-rehash
#
Jsvc安装
下载安装包tomcat,地址如下:
Apache Downloads
commons-daemon-1.0.15-src.tar.gz就在apache里面
二、安装步骤,参考链接
Daemon – Daemon : Java Service
2、解压文件commons-daemon-1.0.15-src.tar.gz,
进入到目录commons-daemon-1.0.15-src/src/native/unix
3、安装以下工具
$sudo apt-get install autoconf
如果GCC, Make, SDK等工具未安装,则一次安装。
3. Buildingfrom source
$ shsupport/buildconf.sh
4. Buildingfrom a release tarball.
$ export JAVA_HOME
$ ./configure
或者用以下命令代替以上两个命令(效果一样)
$./configure --with-Java=/usr/java(这里是JAVA_HOME的路径)
5.开始编译,成功后可在commons-daemon-1.0.15-src/src/native/unix目录下看到jsvc工具
$ make
6. 检查jsvc是否安装成功,出现相关的帮助信息则安装成功
$./jsvc –help
7、编译完成后出现jsvc文件夹,复制jsvc到/usr/lib/tomcat/apache-tomcat-xxxx/bin目录下面
[root@localhost ~]# cp jsvc /usr/lib/tomcat/apache-tomcat-xxxx/bin
8、在/etc/init.d/(注意不是init文件夹)目录下编写tomcat6启动服务配置文件。
[root@localhost ~]#cd /etc/init.d/
[root@localhost ~]# vi tomcat
#!/bin/sh
#chkconfig:2345 90 15
# description Tomcat-en Manager
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# -----------------------------------------------------------------------------
# Commons Daemon wrapper script.
#
# $Id: daemon.sh 1202058 2011-11-15 06:37:12Z mturk $
# -----------------------------------------------------------------------------
#
# resolve links - $0 may be a softlink
JAVA_HOME=/usr/java/jdk1.7.0_80
CATALINA_HOME=/usr/local/apache-tomcat-7.0.69
DAEMON_HOME=$CATALINA_HOME/bin
TOMCAT_USER=op
CATALINA_BASE=$CATALINA_HOME
CATALINA_OPTS="-server -XX:MaxPermSize=512m -XX:MaxNewSize=512m -Xmx2048m"
proc="Tomcat 7.0.69" #注意这里的名字将会在启动或停止的时候显示(标识名称)
ARG0="$0"
while [ -h "$ARG0" ]; do
ls=`ls -ld "$ARG0"`
link=`expr "$ls" : '.*-> .∗$'`
if expr "$link" : '/.*' > /dev/null; then
ARG0="$link"
else
ARG0="`dirname $ARG0`/$link"
fi
done
DIRNAME="`dirname $ARG0`"
PROGRAM="`basename $ARG0`"
while [ ".$1" != . ]
do
case "$1" in
--java-home )
JAVA_HOME="$2"
shift; shift;
continue
;;
--catalina-home )
CATALINA_HOME="$2"
shift; shift;
continue
;;
--catalina-base )
CATALINA_BASE="$2"
shift; shift;
continue
;;
--catalina-pid )
CATALINA_PID="$2"
shift; shift;
continue
;;
--tomcat-user )
TOMCAT_USER="$2"
shift; shift;
continue
;;
* )
break
;;
esac
done
# OS specific support (must be 'true' or 'false').
cygwin=false;
darwin=false;
case "`uname`" in
CYGWIN*)
cygwin=true
;;
Darwin*)
darwin=true
;;
esac
# Use the maximum available, or set MAX_FD != -1 to use that
test ".$MAX_FD" = . && MAX_FD="maximum"
# Setup parameters for running the jsvc
#
test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
# Set JAVA_HOME to working JDK or JRE
# If not set we'll try to guess the JAVA_HOME
# from java binary if on the PATH
#
if [ -z "$JAVA_HOME" ]; then
JAVA_BIN="`which java 2>/dev/null || type java 2>&1`"
test -x "$JAVA_BIN" && JAVA_HOME="`dirname $JAVA_BIN`"
test ".$JAVA_HOME" != . && JAVA_HOME=`cd "$JAVA_HOME/.." >/dev/null; pwd`
else
JAVA_BIN="$JAVA_HOME/bin/java"
fi
# Only set CATALINA_HOME if not already set
test ".$CATALINA_HOME" = . && CATALINA_HOME=`cd "$DIRNAME/.." >/dev/null; pwd`
test ".$CATALINA_BASE" = . && CATALINA_BASE="$CATALINA_HOME"
test ".$CATALINA_MAIN" = . && CATALINA_MAIN=org.apache.catalina.startup.Bootstrap
test ".$JSVC" = . && JSVC="$CATALINA_BASE/bin/jsvc"
# Ensure that any user defined CLASSPATH variables are not used on startup,
# but allow them to be specified in setenv.sh, in rare case when it is needed.
CLASSPATH=
if [ -r "$CATALINA_BASE/bin/setenv.sh" ]; then
. "$CATALINA_BASE/bin/setenv.sh"
elif [ -r "$CATALINA_HOME/bin/setenv.sh" ]; then
. "$CATALINA_HOME/bin/setenv.sh"
fi
# Add on extra jar files to CLASSPATH
test ".$CLASSPATH" != . && CLASSPATH="${CLASSPATH}:"
CLASSPATH="$CLASSPATH$CATALINA_HOME/bin/bootstrap.jar:$CATALINA_HOME/bin/commons-daemon.jar"
test ".$CATALINA_OUT" = . && CATALINA_OUT="$CATALINA_BASE/logs/catalina-daemon.out"
test ".$CATALINA_TMP" = . && CATALINA_TMP="$CATALINA_BASE/temp"
# Add tomcat-juli.jar to classpath
# tomcat-juli.jar can be over-ridden per instance
if [ -r "$CATALINA_BASE/bin/tomcat-juli.jar" ] ; then
CLASSPATH="$CLASSPATH:$CATALINA_BASE/bin/tomcat-juli.jar"
else
CLASSPATH="$CLASSPATH:$CATALINA_HOME/bin/tomcat-juli.jar"
fi
# Set juli LogManager config file if it is present and an override has not been issued
if [ -z "$LOGGING_CONFIG" ]; then
if [ -r "$CATALINA_BASE/conf/logging.properties" ]; then
LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties"
else
# Bugzilla 45585
LOGGING_CONFIG="-Dnop"
fi
fi
test ".$LOGGING_MANAGER" = . && LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER"
# Set -pidfile
test ".$CATALINA_PID" = . && CATALINA_PID="$CATALINA_BASE/logs/catalina-daemon.pid"
# Increase the maximum file descriptors if we can
if [ "$cygwin" = "false" ]; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ "$?" -eq 0 ]; then
# Darwin does not allow RLIMIT_INFINITY on file soft limit
if [ "$darwin" = "true" -a "$MAX_FD_LIMIT" = "unlimited" ]; then
MAX_FD_LIMIT=`/usr/sbin/sysctl -n kern.maxfilesperproc`
fi
test ".$MAX_FD" = ".maximum" && MAX_FD="$MAX_FD_LIMIT"
ulimit -n $MAX_FD
if [ "$?" -ne 0 ]; then
echo "$PROGRAM: Could not set maximum file descriptor limit: $MAX_FD"
fi
else
echo "$PROGRAM: Could not query system maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# ----- Execute The Requested Command -----------------------------------------
case "$1" in
run )
shift
"$JSVC" $* \
-java-home "$JAVA_HOME" \
-pidfile "$CATALINA_PID" \
-wait 10 \
-nodetach \
-outfile "&1" \
-errfile "&2" \
-classpath "$CLASSPATH" \
"$LOGGING_CONFIG" $JAVA_OPTS $CATALINA_OPTS \
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
-Dcatalina.base="$CATALINA_BASE" \
-Dcatalina.home="$CATALINA_HOME" \
-Djava.io.tmpdir="$CATALINA_TMP" \
-Dfile.encoding="UTF-8" \
$CATALINA_MAIN
echo -n "start $proc success."
exit $?
;;
start )
"$JSVC" \
-java-home "$JAVA_HOME" \
-user $TOMCAT_USER \
-pidfile "$CATALINA_PID" \
-wait 10 \
-outfile "$CATALINA_OUT" \
-errfile "&1" \
-classpath "$CLASSPATH" \
"$LOGGING_CONFIG" $JAVA_OPTS $CATALINA_OPTS \
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
-Dcatalina.base="$CATALINA_BASE" \
-Dcatalina.home="$CATALINA_HOME" \
-Djava.io.tmpdir="$CATALINA_TMP" \
-Dfile.encoding="UTF-8" \
$CATALINA_MAIN
echo -n "start $proc success."
exit $?
;;
stop )
"$JSVC" $JSVC_OPTS \
-stop \
-pidfile "$CATALINA_PID" \
-classpath "$CLASSPATH" \
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" \
-Dcatalina.base="$CATALINA_BASE" \
-Dcatalina.home="$CATALINA_HOME" \
-Djava.io.tmpdir="$CATALINA_TMP" \
$CATALINA_MAIN
echo -n "Stop $proc success."
exit $?
;;
version )
"$JSVC" \
-java-home "$JAVA_HOME" \
-pidfile "$CATALINA_PID" \
-classpath "$CLASSPATH" \
-errfile "&2" \
-version \
-check \
$CATALINA_MAIN
if [ "$?" = 0 ]; then
"$JAVA_BIN" \
-classpath "$CATALINA_HOME/lib/catalina.jar" \
org.apache.catalina.util.ServerInfo
fi
exit $?
;;
* )
echo "Unknown command: \`$1'"
echo "Usage: $PROGRAM ( commands ... )"
echo "commands:"
echo " run Start Tomcat without detaching from console"
echo " start Start Tomcat"
echo " stop Stop Tomcat"
echo " version What version of commons daemon and Tomcat"
echo " are you running?"
exit 1
;;
esac
对于权限问题,
总共有两个路径都要改
4、启动项目
把自己的在本地运行的项目拷贝出来,命名为Root
项目在tomcat\apache-tomcat-7.0.69\work\Catalina\localhost\项目名
把项目拷出来,放到你要部署的服务器上边,具体放到的是你的tomcat里面的webapps里面
/opt/apache-tomcat-7.0.104/webapps/ROOT/
ROOT它是你走本地拷贝的文件,把他改成ROOT
在部署项目的时候这是本地配置
一些没写出来的还请见谅,还望指点一二。琪琪宝贝!
转载请艾特原创。