CentOS7搭建MySQL+Redis+MongoDB+FastDF

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 Tair(兼容Redis),内存型 2GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: CentOS7搭建MySQL+Redis+MongoDB+FastDF

本片文章记录了本人搭建服务器数据库的过程,以及遇到的小坑,由于本人也是小菜鸟一个所以搭建的过程也是挺坎坷的,在百度上也找了一大堆才搜集出来,特在此整理一下,方便大家查询参考,如有不对的地方欢迎指正

[资源下载地址]

[链接:https://pan.baidu.com/s/19S1E9-nn_7gYeKWZsrHIWA 提取码:jphs]

安装mongodb

1.上传mongoDB压缩包

2.解压

#tar -zxvf mongodb.tgz

3.进入安装目录,创建日志以及数据目录

# cd /usr/local/mongodb
# mkdir data
# cd data
# mkdir logs
# mkdir db
### 建立log日志文件
# touch mongodb.log

4.进入mongodb/bin目录.新建配置文件mongodb.conf

# cd /usr/local/mongodb/bin
# vim mongodb.conf

配置文件内容如下

dbpath=/usr/local/mongodb/data/db/
logpath=/usr/local/mongodb/data/logs/mongodb.log
logappend=true
port=27017
fork=true
bind_ip=0.0.0.0

5.编写自定义服务

# cd /lib/systemd/system/
# vim monodb.service

mongodb.service的内容如下

[Unit]
 
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/bin/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target

6 给自定义服务文件加权限(754即可,不行就777)

# chmod 777 mongodb.service

7 服务启动并加入开机自启

### 启动服务
# systemctl start mongodb.service
### 查看状态
# systemctl status mongodb.service
### 关闭服务
# systemctl stop mongodb.service
### 加入开机自启
# systemctl enable mongodb.service

安装redis

1.上传redis压缩包

2.解压安装编译

# tar -xvf redis.tgr.gz
# cd /usr/local/redis
# make
# cd src
# make install

编译如果出现错误jemalloc/jemalloc.h

# make MALLOC=libc

使用以上命令即可解决

3. 安装自定义服务

打开redis安装目录下面的utils

# cd utils
# ./install-server.sh

一直回车即可,安装成功之后redis服务为redis_6379,redis的配置文件为/etc/6379.conf

4. 修改配置文件

# vim /etc/6379.conf

daemonize yes 此处改为yes可以为后台运行

bind 0.0.0.0 开启远程连接

requirepass 123456 修改密码

5.到此redis就安装成功了

安装MySQL

1.删除自带mariadb

# rpm -qa|grep mariadb
# rpm -e --nodeps mariadb-libs

2.解压Mysql安装包

# tar -zxvf MySql.tar.gz

3.安装服务

# rpm -ivh mysql-server.rpm
  rpm -ivh mysql-devel.rpm
  rpm -ivh mysql-client.rpm

4.启动服务

# systemctl start mysql

5.进入mysql修改密码

# 查看默认密码
# cat /root/.mysql_secret 
# mysql -uroot -p
mysql>set password for root@localhost = password('123456');
mysql>flush privileges;
#开启远程访问
mysql>grant all privileges on *.*  to 'root'@'%' identified by 'test1234';
mysql>flush privileges;

6.加入开机自启服务

# chkconfig mysql on
#查看开机自启服务
# chkconfig --list | grep mysql

7.Mysql安装完成

FastDFS安装

安装gcc

# yum install -y gcc gcc-c++

安装libevent

# yum -y install libevent

安装libfastcommon

上传 libfastcommon.tar.gz到Centos机器上;

将 libfastcommon.tar.gz解压至/usr/local/下:

# tar -zxvf libfastcommon.tar.gz -C /usr/local/

zip格式的使用下面命令

#unzip -d /usr/local/libfastcommon libfastcommon.zip

#切换安装目录,进行编译安装

# cd/usr/lcoal/libfastcommon
# ./make
# ./make install

复制 libfastcommon.so 库文件

# cd /usr/lib64/
# cp libfastcommon.so /usr/lib

安装tracker

#tar -zxvf FastDFS_v5.05.tar.gz -C /usr/local

切换到安装目录编译安装(/usr/local/FastDFS/ )

# cd /usr/local/FastDFS
# ./make.sh && ./make.sh install

安装成功将安装目录下的conf下的文件拷贝到/etc/fdfs/下

# cp /usr/local/FastDFS/conf/* /etc/fdfs/
配置和启动tracker
# cd /etc/fdfs
# cp tracker.conf.sample tracker.conf
# vim tracker.conf
base_path=/home/yuqing/fastdfs  改为:  base_path=/home/fastdfs
http.server_port  改为: 80

创建fastdfs目录

# mkdir /home/fastdfs

启动tracker

# /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
配置和启动storage
# cd /etc/fdfs
# cp storage.conf.sample storage.conf
# vim storage.conf

修改如下

group_name=group1 #配置组名
base_path=/home/yuqing/fastdfs    改为:  base_path=/home/fastdfs
#store存放文件的位置(store_path)
store_path0=/home/yuqing/fastdfs  改为: store_path0=/home/fdfs_storage
tracker_server=安装tracker的机器ip(本机ip):22122
http.server_port=88

创建 /home/fdfs_storage 目录

# mkdir /home/fdfs_storage

启动storage

# /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
使用FastDFS自带工具测试
# cd /etc/fdfs
# cp client.conf.sample client.conf
# vim client.conf

修改如下

base_path=/home/fastdfs
tracker_server=安装tracker的机器ip(本机ip):22122

上传一张照片到usr目录下面

# /usr/bin/fdfs_test /etc/fdfs/client.conf upload /usr/1.png

看到以下显示即上传成功,记录地址方便一会使用浏览器查看

FastDFS 和nginx整合

解压nginx与fastdfs

# tar -zxvf fastdfs-nginx-module_v1.16.tar.gz -C /usr/local

切换到目录修改配置文件

# cd /usr/local/fastdfs-nginx-module/src/
修改config文件 将文件中的所有 /usr/local/ 路径改为 /usr/

将fastdfs-nginx-module/src下的mod_fastdfs.conf拷贝至/etc/fdfs/下

# cp mod_fastdfs.conf /etc/fdfs/

修改

# vim /etc/fdfs/mod_fastdfs.conf

内容修改如下

base_path=/home/fastdfs
tracker_server=安装tracker的机器ip(本机ip):22122
url_have_group_name=true        #url中包含group名称
store_path0=/home/fdfs_storage  #指定文件存储路径(上面配置的store路径)

将libfdfsclient.so拷贝至/usr/lib下

# cp /usr/lib64/libfdfsclient.so /usr/lib/

创建nginx/client目录

# mkdir -p /var/temp/nginx/client

Nginx的安装

解压

# tar -zxvf nginx-1.8.0.tar.gz -C /usr/local/

安装nginx的依赖库

yum install pcre
yum install pcre-devel
yum install zlib
yum install zlib-devel
yum install openssl
yum install openssl-devel

进入nginx解压的目录下

# cd /usr/local/nginx-1.8.0

加入模块命令配置

./configure \--prefix=/usr/local/nginx \--pid-path=/var/run/nginx/nginx.pid \--lock-path=/var/lock/nginx.lock \--error-log-path=/var/log/nginx/error.log \--http-log-path=/var/log/nginx/access.log \--with-http_gzip_static_module \--http-client-body-temp-path=/var/temp/nginx/client \--http-proxy-temp-path=/var/temp/nginx/proxy \--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \--http-scgi-temp-path=/var/temp/nginx/scgi \--add-module=/usr/local/fastdfs-nginx-module/src

编译安装

# make && make install

复制配置文件到/etc/fdfs

# cd /usr/local/FastDFS/conf
# cp http.conf mime.types /etc/fdfs/

进入nginx目录修改配置文件

# cd /usr/local/nginx
# mkdir /usr/local/nginx/logs  # 创建logs目录
# cd /usr/local/nginx/conf/
# vim nginx.conf

改动如下

nginx启动

# cd /usr/local/nginx/sbin/
# ./nginx

浏览器输入刚才的图片地址查看

nginx和fastdfs加入开机自启

# vim /etc/rc.d/rc.local

添加内容如下

# fastdfs start
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart 
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
# nginx start
/usr/local/nginx/sbin/nginx

给文件添加可执行权限

# chmod +x /etc/rc.d/rc.local

到此整篇服务器搭建记录就结束了,如有错误欢迎指正

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
11天前
|
NoSQL Java 关系型数据库
Liunx部署java项目Tomcat、Redis、Mysql教程
本文详细介绍了如何在 Linux 服务器上安装和配置 Tomcat、MySQL 和 Redis,并部署 Java 项目。通过这些步骤,您可以搭建一个高效稳定的 Java 应用运行环境。希望本文能为您在实际操作中提供有价值的参考。
72 26
|
1月前
|
缓存 NoSQL 关系型数据库
Redis和Mysql如何保证数据⼀致?
在项目中,为了解决Redis与Mysql的数据一致性问题,我们采用了多种策略:对于低一致性要求的数据,不做特别处理;时效性数据通过设置缓存过期时间来减少不一致风险;高一致性但时效性要求不高的数据,利用MQ异步同步确保最终一致性;而对一致性和时效性都有高要求的数据,则采用分布式事务(如Seata TCC模式)来保障。
64 14
|
28天前
|
存储 NoSQL 关系型数据库
MySQL和Redis的区别
**MySQL和Redis的区别** MySQL和Redis都是流行的数据存储解决方案,但它们在设计、用途和特性上有显著区别。理解这些区别有助于选择合适的数据库来满足不同的应用需求。本文将详细介绍MySQL和Redis的区别,包括它们的架构、使用场景、性能和其他关键特性。 ### 一、基本概述 **MySQL**: MySQL是一个关系型数据库管理系统(RDBMS),使用结构化查询语言(SQL)进行数据管理。它支持事务、复杂查询和多种存储引擎,广泛应用于各种Web应用、企业系统和数据分析项目。 **Redis**: Redis是一个基于内存的键值数据库,通常被称为NoSQL数
68 4
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
102 3
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
86 2
|
1月前
|
SQL NoSQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(13)作者——LJS[你个小黑子这都还学不会嘛?你是真爱粉嘛?真是的 ~;以后请别侮辱我家鸽鸽]
MYSQL日志之详解如何配置查看二进制、查询及慢查询日志;备份与恢复等具体详解步骤;举例说明、注意点及常见报错问题所对应的解决方法
2024Mysql And Redis基础与进阶操作系列(13)作者——LJS[你个小黑子这都还学不会嘛?你是真爱粉嘛?真是的 ~;以后请别侮辱我家鸽鸽]
|
1月前
|
存储 SQL NoSQL
|
1月前
|
存储 SQL NoSQL
2024Mysql And Redis基础与进阶操作系列(10)作者——LJS[你个IKUN还学不会嘛?你是真爱粉嘛?真是的 ~;以后别侮辱我家鸽鸽]
Mysql And Redis基础与进阶操作系列之存储函数和MySQL 触发器等具体举例以及详解步骤;注意点及常见报错问题所对应的解决方法]
|
1天前
|
存储 JSON NoSQL
学习 MongoDB:打开强大的数据库技术大门
MongoDB 是一个基于分布式文件存储的文档数据库,由 C++ 编写,旨在为 Web 应用提供可扩展的高性能数据存储解决方案。它与 MySQL 类似,但使用文档结构而非表结构。核心概念包括:数据库(Database)、集合(Collection)、文档(Document)和字段(Field)。MongoDB 使用 BSON 格式存储数据,支持多种数据类型,如字符串、整数、数组等,并通过二进制编码实现高效存储和传输。BSON 文档结构类似 JSON,但更紧凑,适合网络传输。
25 15
|
9天前
|
存储 NoSQL 关系型数据库
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
我们的风控系统引入阿里云数据库MongoDB版后,解决了特征类字段灵活加减的问题,大大提高了开发效率,极大的提升了业务用户体验,获得了非常好的效果
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
下一篇
DataWorks