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

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

make编译

make install 安装

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

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

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

yum install perl-Data-Dumper.x86_64

  错误2:

执行

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

  

登录之后将其他用户的密码也可改为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

服务器环境迁移,Linux centos7 64位 基础环境部署 jdk+tomcat+mysql+nginx的更多相关文章

  1. linux下memcached安装 和redis安装,jdk,tomcat,mysql 安装

    一.memcached安装yum  search  memcachedyum  -y install memcachedmemmcached -h service memcached restartc ...

  2. Linux安装部署jdk+tomcat+mysql

    Linux安装部署测试环境 1. JDK安装下载 安装 yum search jdk 找到合适的jdk版本,以下图中的版本为例 yum install java-1.8.0-openjdk.x86_6 ...

  3. linux(centos 7)下安装JDK,Tomcat,mysql 运行Maven 项目

    一.在Linux中安装JDK 1. 将JDK上传到root下(任何位置均可以). 如图: 2. 用解压命令解压JDK tar -xvf (此处为jdk文件名) 如果是rpm包,执行rpm -i jdk ...

  4. CentOS7 64位下MySQL5.7安装与配置

    安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...

  5. 002-docker安装-mac上安装docker,17.06在CentOS7 64位机器上安装

    一.mac上安装docker 1.下载 通过这个链接下载:https://download.docker.com/mac/stable/Docker.dmg 2.安装 将 Moby 的鲸鱼图标拖拽到  ...

  6. [转]在64位的环境中使用VS建立Web项目进行Oracle连接需要注意WebDev是32位的

    本文转自:http://www.cnblogs.com/studyzy/archive/2010/10/28/1863056.html 我们平时使用的都是32位的机器进行开发,装的都是32位的软件,但 ...

  7. CentOS7 64位 安装MySQL5.7

    安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...

  8. 超详细的CentOS7 64位下MySQL5.7安装与配置(YUM)【转发+新创】

    安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...

  9. MinGW32和64位交叉编译环境的安装和使用

    原文出处: CompileGraphics Magick, Boost, Botan and QT with MinGW64 under Windows 7 64 http://www.kinetic ...

随机推荐

  1. Oracle数据库体系结构(3)数据库进程

    一.Oracle进程概述 在oracle中进程分为用户进程(User Process).服务器进程(server process)和后天进程3种. 1.用户进程:当用户连接到数据库执行一个应用程序是, ...

  2. Java多线程系列 JUC线程池01 线程池框架

    转载  http://www.cnblogs.com/skywang12345/p/3509903.html 为什么引入Executor线程池框架 new Thread()的缺点 1. 每次new T ...

  3. python用特殊方法定制类(不全)

    定义在class中不需要直接调用,python的某些函数或操作符会自动的调用对应的特殊方法. 1.python中 __str__和__repr__ __str__()用于显示给用户,而__repr__ ...

  4. jQuery图片水平滑动延迟加载动画

    在线演示 本地下载

  5. sql优化,索引学习

  6. EntityFramework 学习 一 Disconnected Entities

    如何把断开的实体添加到新的context上下文中 1.首先,我们需要把实体附加到新的context上下文实例中. 2.其次,手动的给实体设置适当的实体状态,因为新的context上下文不知道断开的实体 ...

  7. Hadoop 运行jar包时 java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$HotMapper not found

    错误如下 Error: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.zhen.mr.RunJob$H ...

  8. 中美贸易战再次开启,世界两极化进程正在加快形成!..... Copyright: 1688澳洲新闻网 Read more at: https://www.1688.com.au/world/international/2018/06/17/369368/

    中美贸易战再次开启,世界两极化进程正在加快形成! https://www.1688.com.au/world/international/2018/06/17/369368/

  9. linux 新建分区 、格式化 并挂载的命令

    一.新建分区命令为 fdisk /dev/diskname fdisk命令为交互式命令 p:显示当前硬盘上的分区,包括没保存的改动 n:创建新分区 e:表示扩扩展分区 p:表示主分区 d:删除一个分区 ...

  10. Oracle学习笔记_03_单行函数

    1.SQL函数: 单行函数.多行函数 单行函数:       操作数据对象       接受参数返回一个结果       只对一行进行变换       每行返回一个结果       可以转换数据类型  ...