阿里云安装jdk,mysql,nginx

jdk、mysql配置############################

1、去阿里云购买ESC云服务器

2、下载jdk,mysql安装包

3、xshell登录服务器,将安装包上传/usr/local目录

4、jdk解压,环境变量配置

5、mysql解压,重点,有很多坑,centos和ubuntu不一样,我试用的是centos

第一种yum安装(推荐)

1 下载并安装MySQL官方的 Yum Repository

[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
  使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
  之后就开始安装MySQL服务器。

[root@localhost ~]# yum -y install mysql-community-server

至此MySQL就安装完成了,然后是对MySQL的一些设置。

2 MySQL数据库设置

  首先启动MySQL

[root@localhost ~]# systemctl start  mysqld.service
  查看MySQL运行状态,运行状态如图:

[root@localhost ~]# systemctl status mysqld.service

 此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

[root@localhost ~]# grep "password" /var/log/mysqld.log

#第一行就是的
2018-05-15T09:05:16.154149Z 1 [Note] A temporary password is generated for root@localhost: E,u1h4h:TRbh

  如下命令进入数据库:

[root@localhost ~]# mysql -uroot -p
  输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
最后卸载

yum -y remove mysql57-community-release-el7-10.noarch

第二种方法

    在解压后的目录下,添加用户组和用户名    命令 :  groupadd mysql和useradd -r -g mysql mysql

    在解压后的目录下  修改目录权限 命令 : chown -R mysql:mysql  . 后面有个点不要忘了

    任何目录下 安装autoconf库  命令 : yum -y install autoconf

    任何目录下  安装 libaio         命令   yum install -y libaio

    在/usr/local/mysql 目录下  安装数据库:执行命令 ./scripts/mysql_install_db --user=mysql

    执行命过程中出现找不到/var/log/mariadb/mariadb.log这种错误,直接去添加mariadb文件夹和文件   

    修改当前目录拥有者为root用户:执行命令 chown -R root:root ./

    修改当前data目录拥有者为mysql用户:执行命令 chown -R mysql:mysql data

   乱码解决
   vi /etc/my.cnf
   [mysql]
   default-character-set=utf8

  [mysqld]
  default-storage-engine=INNODB
  character_set_server=utf8

   注意mysql和mysqld区别,容易混淆

  要顺利使用mysql 命里,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。

  命令: ln -s /usr/local/mysql/bin/mysql /usr/bin

  把启动脚本放到开机初始化目录,启动mysql服务
    命令 :cp support-files/mysql.server /etc/init.d/mysql
    命令:service mysql start

    命令:service mysqld start

执行命过程中Failed to start mysqld.service: Unit not found

解决方法如下:

  首先需要安装mariadb-server
   yum install -y mariadb-server
  启动服务
   systemctl start mariadb.service
  添加到开机启动

   systemctl enable mariadb.service

进行一些安全设置,以及修改数据库管理员密码
     mysql_sceure_installation

     mysql -u root -p 就可以进去了,初始密码为空,回车后就可以进去了

    设置数据库密码就不写了,因为太简单了

安装到此结束。。。。。。。。。。。。。。。。。。。。

数据库建好后,nivicate还是不能访问的 ,

    mysql->grant all privileges on *.* to 'root'@'%' identified by '你的数据库密码' with grant option;

    mysql->flush privileges;--刷新权  
    mysql->quit --退出mysql命令行  

/etc/init.d/mysql restart #重启mysql    

第二步

然后打开阿里云服务器安全组设置,添加安全组规则
 网卡类型:内网
 规则方向:入方向
 授权策略:允许
 协议类型:mysql(3306)
 授权类型:地址段访问
 授权对象:0.0.0.0/0

保存,你可以用navicate链接了

nginx 配置#############################

nginx 安装
    安装依赖
    gcc环境                :yum install gcc
    安装pcre库             :yum install pcre-devel
    zlib库                 :yum install zlib zlib-devel
    安装安全套接字层密码库 :yum install openssl openssl-devel


    //或一键安装上面四个依赖


    yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel


下载nginx的tar包
    //创建一个文件夹
    cd /usr/local
    mkdir nginx
    cd nginx
    //下载tar包
    wget http://nginx.org/download/nginx-1.13.7.tar.gz
    tar -zxvf nginx-1.13.7.tar.gz


安装nginx
    //进入nginx目录
       cd /usr/local/nginx/nginx-1.13.7
    //执行命令
      ./configure
   //执行make命令
      make
   //执行make install命令
     make install
打开防火墙
vi /etc/sysconfig/iptables 
添加允许的端口
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT(允许80端口通过防火墙) 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允许3306端口通过防火墙)
重启防火墙
systemctl restart firewalld.service 


配置开机启动
   首先,在linux系统的/etc/init.d/目录下创建nginx文件,使用如下命令:  vi /etc/init.d/nginx  在脚本中添加如下命令:

《此处开始》
**********************************************************************************************
#如果你安装的目录和我不一样nginxd=/usr/local/nginx/sbin/nginx  ;nginx_config=/usr/local/nginx/conf/nginx.conf改成你的

#!/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"
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# 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: "
   daemon $nginxd -c ${nginx_config}
   RETVAL=$?
   echo
   [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
   return $RETVAL
}
# Stop nginx daemons functions.
stop() {
        echo -n $"Stopping $prog: "
        killproc $nginxd
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid
}
# 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|restart|reload|status|help}"
        exit 1
esac
exit $RETVAL


***************************************************************************************
nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
nginx_pid=/var/run/nginx.pid

《此处结束》


接着,设置文件的访问权限:  chmod a+x /etc/init.d/nginx (a+x参数表示 ==> all user can execute 所有用户可执行)


最后将ngix加入到rc.local文件中,这样开机的时候nginx就默认启动了  vi /etc/rc.local  添加  /etc/init.d/nginx start  保存并退出  下次重启就会生效,实现nginx的自启动。

此时直接输入ip地址还是不能访问到welcome页面的,需要在阿里云控制台的安全组,创建一个授权80端口,然后服务器防火墙添加80端口,你会看到welcome页面了

接下来就是映射到ip地址映射到tomcat服务了

   在nginx.conf文件中 ,server在同一级添加添加如下

   upstream backend {

        server localhost:8082 weight=1;//映射到本地8082端口的tomcat服务,backend别名

    }

 server {
        listen       80;//这是外网的端口,可以写81,82等,记得加了端口就要配置防火墙
        server_name  backend.leihun.net;//来自我阿里云的二级域名

        location / {

                    proxy_pass http://backend;   #上面的别名

                   #以下是缓存和一下请求头配置

                    proxy_redirect off;
                    proxy_set_header Host $host;
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    client_max_body_size 10m;
                    client_body_buffer_size 128k;
                    proxy_connect_timeout 90;
                    proxy_read_timeout 90;
                    proxy_buffer_size 4k;
                    proxy_buffers 6 32k;
                    proxy_busy_buffers_size 64k;
                    proxy_temp_file_write_size 64k;
        }

     }

在tomcat service.xml中找到Host 和defaultHost,把localhost改成正式ip,之后启动tomcat,那么就可以ip地址访问,

把localhost改成正式域名,那么可以域名访问了(域名备案才可以)


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值