这个项目是一个整合SpringCloud微服务的实现了登录注册功能的项目。原任务要求并没有说要部署到linux上,我已经将该工程部署到本地windows上并测试通过了。但是如果是生产环境肯定要部署到linux上,所以就想试一试。我用的linux是腾讯云centos,项目用到的技术栈有:
- mysql
- nginx
- rabbitmq
- Springboot
- SpringCloud Eureka
- SpringCloud Feign
- SpringCloud Gateway
- ...
任务: SpringCloud作业要求
目录
首先要在centos上安装环境
我的linux版本 是 CentOS Linux release 7.8.2003 (Core)
查看命令:
[root@VM-0-16-centos local]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
1,安装mysql
可以用yum安装或手动安装,我是手动安装。
如果安装过需要卸载、未安装则跳过
# rpm -qa | grep mysql
mysql-libs-5.1.73-3.el6_5.x86_64
# rpm -e mysql-libs-5.1.73-3.el6_5.x86_64 --nodeps
如果是centos系统,默认会开启selinux
关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled。
下载mysql的安装 ,我用的是 mysql-5.7.14-linux-glibc2.5-x86_64.tar.gz
将安装包传到/usr/local 并解压 ,改名
# mv mysql-5.7.14-linux-glibc2.5-x86_64 mysql
配置 /etc/my.cnf :
[mysql]
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
port = 3306
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
max_connections=1000
character-set-server=utf8
default-storage-engine=INNODB
log_error=/usr/local/mysql/logs/mysql-error.log
pid-file=/var/run/mysqld/mysqld.pid
安装 libaio
# yum install libaio
创建目录 mysql/data, mysql/logs
创建用户, 创建目录之后更换属主
useradd -r -g mysql mysql
groupadd mysql
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
初始化 mysql
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
将mysql注册为服务并启动,设置为开机自动启动
chkconfig --level 35 mysqld on
cd /usr/local/mysql/support-files
cp mysql.server /etc/init.d/mysqld
chkconfig --level 35 mysqld on
service mysqld start
查看状态:
安装完成后修改root密码(安装后在log里查看默认密码,但是我没有找到,没有密码也能登陆进去)
[root@VM-0-16-centos bin]# ./mysql -uroot
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.14 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set authentication_string=PASSWORD("root")where user="root";
Query OK, 0 rows affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 1
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
创建用户并赋予外界访问权限(貌似外界不能用root访问)
mysql> CREATE USER 'limeng'@'%' IDENTIFIED BY 'limeng';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'limeng'@'%' WITH GRANT OPTION;
连接测试:
如果连接失败则要打开3306端口
2,安装erlang环境
安装rabbitmq之前先要安erlang环境
首先需要安装C++编译
# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson
安装erlang。下载安装包 otp_src_19.1.tar.gz 并解压
# tar -xvf o