服务器环境安装
- 环境依赖
- 服务器配置
- 配置SSH登录
- 打开安全配置端口
- 远程连接配置秘钥
- Linux服务器常用指令
- 向远程服务器传送文件
- systemctl 相关
- 安装MySql
- 安装步骤
- step1 检查并清除以前的mysql相关文件
- step2 安装
- step3 MySQL参数配置
- step4 设置开机启动
- step5 初始化数据库
- step6配置数据库连接信息
- 安装Redis
- step1 安装
- step2 Redis配置修改
- step3 配置客户端连接
- step4 设置开机自启动
环境依赖
开发环境离不开服务器、数据库存储等,服务器我们可以直接买阿里云的就行,开发环境可以买个最低配就行,2c2g的配置就行了。
服务器有了,还需要数据库、Redis、缓存等组件,前期开发把这些全部买齐,成本蛮高的。一个人开发也不需要测试环境多么的高可用,所以需要的环境自己搭建就行了。对于团队开发,建议购买线上服务,保证安全高可用。下面主要介绍如何在一台ECS上搭建一套开发环境。
服务器配置
服务器购买完之后,环境初始化启动完成之后,配置SSH登录。
配置SSH登录
打开安全配置端口
远程连接配置秘钥
- 复制本地电脑公钥
- 将秘钥保存到服务端
- 本地登录
ssh root@ip地址
Linux服务器常用指令
向远程服务器传送文件
# scp 本地路径 用户名@ip地址:远程路径,如下
︎scp ./xxx/xxx.jar root@61.215.123.10:/tmp/app/jar/
systemctl 相关
后面安装MySQL和Redis,需要服务开启自动启动,会用到systemctl命令
https://linux.cn/article-5926-1.html
Systemctl能够管理的单元包括:服务(.service),挂载点(.mount),套接口(.socket)和设备(.device)作为单元。
单位的目录:/usr/lib/systemd/system(Centos)或/etc/systemd/system(Ubuntu)
systemctl命令兼容了service,即systemctl也会去/etc/init.d目录下,查看,执行相关程序。
Linux 服务管理有两种方式 service和systemctl
安装MySql
服务器系统选择的是:Alinux
查看系统版本:
# 查看系统版本
cat /etc/redhat-realse
参考文章:https://blog.csdn.net/zzulishulei/article/details/121404906
安装步骤
该步骤适用于Alinux,其他linux系统可参考使用。
step1 检查并清除以前的mysql相关文件
查看并卸载mysql的安装包。
执行命令:dnf list installed | grep mysql 。或者使用对应的rpm命令。 如果有内容,则使用 dnf remove 包名 卸载。
执行命令:find / -name mysql 。如果有内容,则使用 rm -rf 文件路径 删除文件。
dnf其他指令
1. dnf list installed 表示查询所有安装过的rpm包
2. grep mysql 表示使用正则表达式查询包含关键字mysql的内容
3. 分别开repository 和 package的关系。 rpm包包含在repository中,这也是 dnf repolist 和 dnf list 的区别
4. whereis、which、find、location的区别和用法 https://www.cnblogs.com/kex1n/p/5233821.html
5. rpm ,yum ,dnf 之间的区别和关系 https://www.ywnz.com/linux/6252.html
step2 安装
dnf install -y mysql-server
step3 MySQL参数配置
- 查找数据库的默认配置文件的读取位置
mysql --help | grep my.cnf
- 修改my.cnf
#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
[mysqld]
#数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用4个字节)
character-set-server = utf8mb4
#数据库字符集对应一些排序等规则,注意要和character-set-server对应
collation-server = utf8mb4_general_ci
#设置client连接mysql时的字符集,防止乱码
init_connect='SET NAMES utf8mb4'
#是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1
#最大连接数
max_connections = 400
#最大错误连接数
max_connect_errors = 1000
#MySQL连接闲置超过一定时间后(单位:秒)将会被强行关闭
#MySQL默认的wait_timeout 值为8个小时, interactive_timeout参数需要同时配置才能生效
interactive_timeout = 1800
wait_timeout = 1800
step4 设置开机启动
systemctl enable --now mysqld
step5 初始化数据库
按照提示操作即可:
mysql_secure_installation
依次需要判断的内容:
配置验证密码组件,输入 y
配置密码验证等级,可以输入 0 、1 、2 ,分别对应三个等级。
输入密码,需要输入两次,页面上不会显示出你输入的密码,输入完之后按回车即可
确认使用该密码,输入 y
是否移除匿名用户,输入 y
是否禁止root用户远程登录 如果需要远程登录,请输入 n
是否移除测试数据库,输入 y
是否重载权限表,输入 y
step6配置数据库连接信息
mysql -uroot -p 通过新密码再次登陆
create user 'root'@'%' identified by '新密码'; 授予远程访问权限
grant all privileges on *.* to 'root'@'%'; 授予远程访问权限
flush privileges; 授予远程访问权限
alter user 'root' @'%' identified with mysql_native_password by '新密码'; 授权mysql_native客户端工具
安装完成之后需要开放对应的端口,阿里云服务器默认是没有打开3306端口的,所以按需在安全组开放对应端口。
安装Redis
step1 安装
sudo yum install -y redis-6.0.5
step2 Redis配置修改
修改 redis.conf 中 daemonize 为 yes,确保守护进程开启,也就是在后台可以运行.
step3 配置客户端连接
允许所有客户端连接,注释掉配置文件中这一行
step4 设置开机自启动
3.设置开机自动启动
chmod -R 777 /var/log/redis/
service redis start
service redis stop
service redis status