服务器环境迁移,Linux centos7 64位 基础环境部署 jdk+tomcat+mysql+nginx

时间:2021-10-05 18:20:57

最近阿里云服务器到期,这个周末连夜将服务器迁移到美国去了,为什么迁移到美国去呢?主要是因为阿里云服务器费用高,另外网站的访问量不大,对网速要求也不高,主要是宣传和信息传递的作用,加上本人之前在搬瓦工上租了vps,安装* 跳墙用,所以想索性将服务器暂时放到国外算了,一举两用,也不用买别人的vpn代理用来跳墙了。

整个迁移过程和软件安装步骤如下:

  首先在vps上安装了nginx,保证国内能访问,并且网速能接受nginx安装,之前在博客上写过部署,不过这个刚好借此机会汇总下:

 1.1 安装nginx之前呢,需要首先安装必要的库(nginx 中gzip模块需要 zlib 库,rewrite模块需要 pcre 库,ssl 功能需要openssl库),选定/usr/local为安装目录,以下具体版本号根据实际改变。

  不过安装这些库之前确保系统安装了g++、gcc

  使用yum进行安装

yum –install gcc
yum install gcc-c++ libstdc++-devel

1.2 安装PCRE库:

$ cd /usr/local/
$ wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
$ tar -zxvf pcre-8.38.tar.gz
$ cd pcre-8.38
$ ./configure
$ make
$ make install

  注:不要安装pcre2

 1.3 安装zlib库

$ cd /usr/local/ 
$ wget http://zlib.net/zlib-1.2.11.tar.gz
$ tar -zxvf zlib-1.2.11.tar.gz
$ cd zlib-1.2.11
$ ./configure
$ make
$ make install

1.4 安装ssl

$ cd /usr/local/
$ wget http://www.openssl.org/source/openssl-1.0.1j.tar.gz
$ tar -zxvf openssl-1.0.1j.tar.gz
$ ./config
$ make
$ make install

  

       1.5 安装nginx

$ cd /usr/local/
$ wget http://nginx.org/download/nginx-1.8.0.tar.gz
$ tar -zxvf nginx-1.8.0.tar.gz
$ cd nginx-1.8.0
$ ./configure \
--prefix=/usr/local/nginx-1.8.0 \
--with-http_ssl_module \
--with-openssl=/usr/local/openssl-1.0.1j \
--with-pcre=/usr/local/pcre-8.38 \
--with-zlib=/usr/local/zlib-1.2.11 \
--with-http_stub_status_module \
--with-threads
$ make
$ make install

  出现如下几种错误

              错误1:

src/core/ngx_regex.h:15:18: fatal error: pcre.h: No such file or directory

        解决方案:原因是缺少pcre,需要安装libpcre

yum install pcre-devel

  错误2:

服务器环境迁移,Linux centos7 64位 基础环境部署 jdk+tomcat+mysql+nginx

 解决方法:直接上./configure配置,ok(我也不知道为什么就这么就好了)

make编译

make install 安装

nginx安装成功后:

服务器环境迁移,Linux centos7 64位 基础环境部署 jdk+tomcat+mysql+nginx

检查是否启动成功:

打开浏览器访问此机器的 IP,如果浏览器出现 Welcome to nginx! 则表示 Nginx 已经安装并运行成功。

nginx操作命令如下:

重启:
$ /usr/local/nginx/sbin/nginx –s reload
停止:
$ /usr/local/nginx/sbin/nginx –s stop
测试配置文件是否正常:
$ /usr/local/nginx/sbin/nginx –t
强制关闭:
$ pkill nginx

 附一部分nginx配置解决各种cookie共享和静态图片访问的问题

 1 server {
2 listen 80 ;
3 server_name www.biyebao.cn;
4 index index.jsp index.html;
5 location / {
6 proxy_set_header Host $host;
7 proxy_set_header X-Real-IP $remote_addr;
8 proxy_set_header REMOTE-HOST $remote_addr;
9 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
10 rewrite ^/biyebao-web/(.*)$ /$1 last;
11 proxy_pass http://localhost:8080/biyebao-web/;
12 }
13
14 location = /50x.html {
15 root html;
16 }
17
18 location ~ ^/favicon\.ico$ {
19 root www;
20
21 }

  

 

  1. 修改DNS解析将ip换成新的IP地址,访问域名验证是否ok,此处验证成功
  2. 安装JDK和TOMCAT,拷贝原服务器上的source

    jdk解压后修改/etc/profile,设置path和JAVA_HOME,和CLASS_PATH

    export JAVA_HOME=/var/java/jdk/jdk1.7.0_71
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    tomcat修改server.xml,设置webapp目录地址

    <Host name="localhost"  appBase="/home/webapps" unpackWARs="true" autoDeploy="true">
  3. MySql安装
1.安装版本: mysql-5.6.31-linux-glibc2.5-x86_64.tar.gz
2.下载地址:http://dev.mysql.com/downloads/mysql/

4.1 解压

tar -zxvf mysql-5.6.31-linux-glibc2.5-x86_64.tar.gz

  4.2 重命名解压后的文件

mv mysql-5.6.31-linux-glibc2.5-x86_64/ mysql

  4.3 添加mysql用户组和mysql用户

先检查是否已经添加
groups mysql

#没有则添加
groupadd mysql
useradd -r -g mysql mysql

  4.4进入mysql目录更改文件权限

cd mysql/
chown -R mysql:mysql ./

  4.5执行安装脚本

./scripts/mysql_install_db --user=mysql

安装过程中遇到如下错误:

服务器环境迁移,Linux centos7 64位 基础环境部署 jdk+tomcat+mysql+nginx

需要用以下命令安装Perl模块:

yum install perl-Data-Dumper.x86_64

  错误2:

服务器环境迁移,Linux centos7 64位 基础环境部署 jdk+tomcat+mysql+nginx

执行

yum install libaio

  若有没有什么目录,或者权限问题,请到创建相关目录,和权限赋值

4.6 安装完之后修改当前目录拥有者为root用户,修改data目录拥有者为

mysql chown -R root:root ./ chown -R mysql:mysql data

4.7 启动server

./support-files/mysql.server start 

如果MySQL启动报错,则可能是已经存在MySQL进程,杀掉即可 ps aux|grep mysql kill -9 上边的进程号
,或者下边一条命令即可杀掉所有MySQL进程 ps aux|grep mysql|awk '{print $2}'|xargs kill -9

修改密码:

./bin/mysqladmin -u root -h localhost.localdomain password 'root'

  密码修改好登录:

./bin/mysql -h127.0.0.1 -uroot -proot

  服务器环境迁移,Linux centos7 64位 基础环境部署 jdk+tomcat+mysql+nginx

       登录之后将其他用户的密码也可改为root

update mysql.user set password=password('root') where user='root';
flush privileges;

   增加远程登录权限

grant all privileges on *.* to root@'%' identified by 'root';
flush privileges;

  将MySQL加入Service系统服务

cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld restart
service mysqld status

  配置my.cnf

vim my.cnf
#添加以下两条语句并保存退出
default-character-set=utf8
lower_case_table_names=1
max_allowed_packet=100M

  配置好之后,重启mysqld服务

service mysqld restart
service mysqld status

  数据导入

source d:\datafilename.sql 

 参考:http://www.jianshu.com/p/f4a98a905011