UbuntuNginxTomcat
注意:jdk,tomcat,mysql请不要装在你的home目录,这样开机启动会失败,会提示相应的文件找不多,可能是应为那时候home目录没有挂载
1:安装nginx
下载nginxhttp://nginx.org/download/nginx-1.2.2.tar.gz
解压
Java代码
-
tar -zxf nginx-1.2.2.tar.gz
Java代码
-
./configure --prefix=/usr/local/nginx
Java代码
-
make && sudo make install
configure可能会提示出错:安装一下两个依赖就可以了
Java代码
-
sudo apt-get install libpcre3-dev
-
sudo apt-get install libssl-dev
默认生成的nginx是带调试信息的,如果要去掉调试信息,则要修改 nginx目录下的auto/cc/gcc文件,找到
Java代码
-
# debug
-
CFLAGS="$CFLAGS -g"
注释掉就可以了,然后再重新编译就可以了
设置开机启动:
在/etc/init.d/下新建一个文件,就叫 nginx,内容为:
Java代码
-
#!/bin/bash
-
# nginx Startup script for the Nginx HTTP Server
-
# it is v.0.0.2 version.
-
# chkconfig: - 85 15
-
# description: Nginx is a high-performance web and proxy server.
-
# It has a lot of features, but it's not for everyone.
-
# processname: nginx
-
# pidfile: /var/run/nginx.pid
-
# config: /usr/local/nginx/conf/nginx.conf
-
nginxd=/usr/local/nginx/sbin/nginx
-
nginx_config=/usr/local/nginx/conf/nginx.conf
-
nginx_pid=/var/run/nginx.pid
-
RETVAL=0
-
prog="nginx"
-
# Check that networking is up.
-
[ ${NETWORKING} = "no" ] && exit 0
-
[ -x $nginxd ] || exit 0
-
# Start nginx daemons functions.
-
start() {
-
if [ -e $nginx_pid ];then
-
echo "nginx already running...."
-
exit 1
-
fi
-
echo -n $"Starting $prog: "
-
$nginxd -c ${nginx_config}
-
RETVAL=$?
-
echo
-
[ $RETVAL = 0 ]
-
return $RETVAL
-
}
-
# Stop nginx daemons functions.
-
stop() {
-
echo -n $"Stopping $prog: "
-
$nginxd -s stop
-
RETVAL=$?
-
echo
-
[ $RETVAL = 0 ]
-
}
-
# reload nginx service functions.
-
reload() {
-
echo -n $"Reloading $prog: "
-
#kill -HUP `cat ${nginx_pid}`
-
killproc $nginxd -HUP
-
RETVAL=$?
-
echo
-
}
-
# See how we were called.
-
case "$1" in
-
start)
-
start
-
;;
-
stop)
-
stop
-
;;
-
reload)
-
reload
-
;;
-
restart)
-
stop
-
start
-
;;
-
status)
-
status $prog
-
RETVAL=$?
-
;;
-
*)
-
echo $"Usage: $prog {start|stop}"
-
exit 1
-
esac
-
exit $RETVAL
Java代码
-
sudo chmod +x nginx
Java代码
-
sudo update-rc.d -f nginx defaults
2:安装jdk
去官网下载jdk,后缀为 .tar.gz的,解药到 /usr/local/java下面
设置环境变量:
vi /etc//environment
将此文件改成如下样子:
Java代码
-
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/java/bin"
-
export JAVA_HOME=/usr/local/java
就可以了
使之生效:执行:
Java代码
-
sudo source /etc/environment
3:安装 tomcat
直接下载tomcat,解药到 /usr/local/tomcat目录下
设置tomcat为系统服务:
复制一份tomcat,bin目录下的catalina.sh文件到/etc/init.d,并改名为 tomcat
在此文件前面加上如下几行:
Java代码
-
修改 catalina.sh,头上加入如下::
-
JAVA_HOME=/usr/local/java
-
CATALINA_HOME+/usr/local/tomcat
-
CLASSPATH=$JAVA_HOME/lib:$CATALINA_HOME/lib
Java代码
-
update-rc.d -f tomcat defaults
这样就OK了
4.安装mysql
下载绿色版的mysql,解药到/usr/local/mysql下
可能要安装一下依赖库:
Java代码
-
sudo apt-get install libaio1
Java代码
-
sudo groupadd mysql
-
sudo useradd -r -g mysql mysql
-
sudo chown -R mysql:mysql /usr/local/mysql
-
sudo scripts/mysql_install_db --user=mysql
Java代码
-
cd /etc/init.d
-
sudo ln -s /usr/local/mysql/support-files/mysql.server
-
sudo update-rc.d mysql.server defaults
创建用户:
CREATE USER 'aaa'@'%' IDENTIFIED BY 'aaa';
GRANT ALL ON *.* TO 'aaa'@'%';

MySQLoffersvariousstorageengines,eachsuitedfordifferentusecases:1)InnoDBisidealforapplicationsneedingACIDcomplianceandhighconcurrency,supportingtransactionsandforeignkeys.2)MyISAMisbestforread-heavyworkloads,lackingtransactionsupport.3)Memoryengineis

Common security vulnerabilities in MySQL include SQL injection, weak passwords, improper permission configuration, and unupdated software. 1. SQL injection can be prevented by using preprocessing statements. 2. Weak passwords can be avoided by forcibly using strong password strategies. 3. Improper permission configuration can be resolved through regular review and adjustment of user permissions. 4. Unupdated software can be patched by regularly checking and updating the MySQL version.

Identifying slow queries in MySQL can be achieved by enabling slow query logs and setting thresholds. 1. Enable slow query logs and set thresholds. 2. View and analyze slow query log files, and use tools such as mysqldumpslow or pt-query-digest for in-depth analysis. 3. Optimizing slow queries can be achieved through index optimization, query rewriting and avoiding the use of SELECT*.

To monitor the health and performance of MySQL servers, you should pay attention to system health, performance metrics and query execution. 1) Monitor system health: Use top, htop or SHOWGLOBALSTATUS commands to view CPU, memory, disk I/O and network activities. 2) Track performance indicators: monitor key indicators such as query number per second, average query time and cache hit rate. 3) Ensure query execution optimization: Enable slow query logs, record and optimize queries whose execution time exceeds the set threshold.

The main difference between MySQL and MariaDB is performance, functionality and license: 1. MySQL is developed by Oracle, and MariaDB is its fork. 2. MariaDB may perform better in high load environments. 3.MariaDB provides more storage engines and functions. 4.MySQL adopts a dual license, and MariaDB is completely open source. The existing infrastructure, performance requirements, functional requirements and license costs should be taken into account when choosing.

MySQL uses a GPL license. 1) The GPL license allows the free use, modification and distribution of MySQL, but the modified distribution must comply with GPL. 2) Commercial licenses can avoid public modifications and are suitable for commercial applications that require confidentiality.

The situations when choosing InnoDB instead of MyISAM include: 1) transaction support, 2) high concurrency environment, 3) high data consistency; conversely, the situation when choosing MyISAM includes: 1) mainly read operations, 2) no transaction support is required. InnoDB is suitable for applications that require high data consistency and transaction processing, such as e-commerce platforms, while MyISAM is suitable for read-intensive and transaction-free applications such as blog systems.

In MySQL, the function of foreign keys is to establish the relationship between tables and ensure the consistency and integrity of the data. Foreign keys maintain the effectiveness of data through reference integrity checks and cascading operations. Pay attention to performance optimization and avoid common errors when using them.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Dreamweaver Mac version
Visual web development tools
