前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Centos7搭建JDK+Mysql+Redis

Centos7搭建JDK+Mysql+Redis

作者头像
IT小马哥
发布2021-07-27 16:16:17
5590
发布2021-07-27 16:16:17
举报
文章被收录于专栏:Java Tale

JDK

下载

安装

代码语言:javascript
复制
# 创建目录
mkdir /usr/local/java
# 拷贝安装包到指定目录
cp jdk-8u301-linux-x64.tar.gz   /usr/local/java/
# 进入java安装目录
cd /usr/local/java/
# 解压jdk安装包
tar -zxvf jdk-8u301-linux-x64.tar.gz
# 删除安装包(可选)
rm -rf jdk-8u301-linux-x64.tar.gz 

配置环境变量

代码语言:javascript
复制
# 编辑配置文件
vim /etc/profile
# 最下面添加如下内容:
export JAVA_HOME=/usr/local/java/jdk1.8.0_301
export CLASSPATH=$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
export PATHJAVA_HOME CLASSPATH
# 然后ESC :wq保存退出
:wq
# 配置生效
source /etc/profile
# 检查安装情况
java -version

MYSQL

背景信息

  • MySQL:5.7.33 MySQL相关安装路径说明如下:
    • 配置文件:/etc/my.cnf
    • 数据存储:/var/lib/mysql
    • 命令文件:/usr/bin和/usr/sbin
  • 数据库端口:3306

安装mysql

代码语言:javascript
复制
# 更新YUM源
rpm -Uvh  https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
# 安装MySQL
yum -y install mysql-community-server
# 查看MySQL版本号
mysql -V

配置MySQL

代码语言:javascript
复制
# 启动MySQL服务
systemctl start mysqld
# 设置MySQL服务开机自启动
systemctl enable mysqld
# 查看/var/log/mysqld.log文件,获取并记录root用户的初始密码
grep 'temporary password' /var/log/mysqld.log
# 执行​命令结果示例如下。
2020-04-08T08:12:07.893939Z 1 [Note] A temporary password is generated for root@localhost: xvlo1lZ12>uI
# 对MySQL进行安全性配置需要初始密码
mysql_secure_installation

安全性配置

重置root用户的密码

代码语言:javascript
复制
#确保MySQL服务器部署的安全。
Securing the MySQL server deployment.
#输入root用户的密码:  输入上一步获取的root用户初始密码
Enter password for user root: 
#root用户的密码已经过期。请设置新密码。
The existing password for the user account root has expired. Please set a new password.
#新密码:
New password: 
#重新输入新密码:
Re-enter new password: 
#'validate_password'插件安装在服务器上。
The 'validate_password' plugin is installed on the server.
#后续步骤将使用现有配置运行的插件。
The subsequent steps will run with the existing configuration
of the plugin.
#使用现有的root密码。
Using existing password for root.
#估计密码强度:100
Estimated strength of the password: 100 
#修改root用户密码?(按y| y表示是,其他任何键表示否):y
Change the password for root ? ((Press y|Y for Yes, any other key for No) : y
#新密码: 长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号。特殊符号可以是()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/
New password: 
#重新输入新密码:
Re-enter new password: 
#估计密码强度:100
Estimated strength of the password: 100 
#您希望继续使用所提供的密码吗?(按y| y为Yes,按其他键为No): y
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y

删除匿名用户账号

代码语言:javascript
复制
#默认情况下,MySQL安装有一个匿名用户,允许任何人登录到MySQL,而无需为他们创建用户帐户。这只用于测试,并使安装过程更顺畅。您应该在转移到生产环境之前删除它们。
By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment.
#删除匿名用户?(按y| y为Yes,按其他键为No):
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y  #是否删除匿名用户,输入Y
Success.

禁止root账号远程登录

代码语言:javascript
复制
# 通常,根应该只允许从“localhost”。这就保证了别人猜不到来自网络的根密码。
Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network.

#禁止root远程登录?(按y| y表示是,其他键表示否):
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y #禁止root远程登录,输入Y
Success.

删除test库以及对test库的访问权限

代码语言:javascript
复制
默认情况下,MySQL自带一个名为“test”的数据库任何人都可以访问。这也仅用于测试,并且应该在进入生产之前被删除环境。
By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing,and should be removed before moving into a production environment.

删除测试数据库并访问它?(按y| y表示是,其他键表示否)
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y #是否删除test库和对它的访问权限,输入Y
- Dropping test database...
Success.

重新加载授权表

代码语言:javascript
复制
#重新加载特权表将确保所有更改到目前为止所做的将立即生效。
Reloading the privilege tables will ensure that all changes made so far will take effect immediately.

#现在重新加载特权表?(按y| y表示是,其他键表示否)
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : 
Success.
All done!

安全性配置的更多信息,请参见MySQL官方文档

远程访问MySQL数据库

配置安全组策略

阿里云服务器安全组配置>配置规则>添加安全组 授权对象 0.0.0.0/0表示任意的IP。

授权策略

优先级

协议类型

端口范围

授权对象

描述

创建时间

操作

允许

1

自定义 TCP

目的: 3306/3306

源: 0.0.0.0/0

mysql数据库

2021年7月21日13:04:05

编辑复制删除

修改表法

代码语言:javascript
复制
# 进入mysql 输入密码
mysql -u root  -p  
# 切换数据库
use mysql;
# 修改数据库数据
update user set host = '%' where user = 'root';
# 查询修改结果
select host,user from user where user = 'root';

授权法

代码语言:javascript
复制
#你想myuser使用mypassword(密码)从任何主机连接到mysql服务器的话。  
grant all on *.* to 'myuser'@'%' IDENTIFIED BY 'mypassword'; 
#使用root替换 myuser,可设置为允许root账号远程登录。

#如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码   
grant all on *.* to 'myuser'@'192.168.1.6' IDENTIFIED BY 'mypassword'; 
#使修改生效
FLUSH  PRIVILEGES

在采用授权法之后,无法在本地登录mysql 提示ERROR 1045 (28000): Access denied for user 'root'@'loadb116' (using password: YES) 上例中loadb116是主机名. 这时可以使用root进入后授权 grant all privileges on *.* to 'root'@'loadb116' identified by '123456' with grant option; flush privileges; 或者使用本地IP登录

重启服务

代码语言:javascript
复制
systemctl start mysqld

如果此时连不上,重启一下 reboot

Redis

redis下载

下载地址:http://redis.io/download,下载最新稳定版本。

代码语言:javascript
复制
wget http://download.redis.io/releases/redis-6.0.8.tar.gz
tar xzf redis-6.0.8.tar.gz

安装

代码语言:javascript
复制
# 进入redis目录
cd redis-6.0.8
# 安装 gcc  则直接进行编译 make
yum -y install gcc # 如果不安装会编译报错 
# -------------如果还报错  临时升级版本 start
 gcc -v                             # 查看gcc版本
 
 yum -y install centos-release-scl  # 升级到9.1版本
 
 yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
 
 scl enable devtoolset-9 bash 
 # -------------如果还报错  临时升级版本 end
# 编译
make

安装成功会出现:Hint: It's a good idea to run 'make test'

执行make test 进行测试,如果出现如下错误:

代码语言:javascript
复制
[root@localhost redis-6.0.1]# make test
cd src && make test
make[1]: 进入目录“/usr/redis-6.0.1/src”
    CC Makefile.dep
make[1]: 离开目录“/usr/redis-6.0.1/src”
make[1]: 进入目录“/usr/redis-6.0.1/src”
You need tcl 8.5 or newer in order to run the Redis test
make[1]: *** [test] 错误 1
make[1]: 离开目录“/usr/redis-6.0.1/src”
make: *** [test] 错误 2 

解决办法

代码语言:javascript
复制
# 安装 tcl
yum install tcl

make test

修改配置文件

代码语言:javascript
复制
# 修改配置文件
vi redis.conf
# 修改 #bind 127.0.0.1 为bind 0.0.0.0 -> 允许所有主机访问
69 # bind 127.0.0.1 
70       bind 0.0.0.0
# 将daemonize no 改成 daemonize yes -> 设置redis可以一直在后台运行,以守护进程方式运行
225 daemonize yes
#  密码设置,将”#requirepass foobared“ 取掉注释改成 requirepass 123456(或者其它你需要的密码)
requirepass 123456
GZA$bXZwnbe!6j 

设置开机启动

代码语言:javascript
复制
# 创建存放redis的配置文件
mkdir /etc/redis
# 创建存放redis的持久化文件 (可选)
mkdir /var/redis/
mkdir /var/redis/6379 
# 拷贝配置文件
cp /usr/local/redis/redis-6.0.8/redis.conf /etc/redis/6379.conf
# 检查一下配置
daemonize	yes							#让redis以daemon进程运行
pidfile		/var/run/redis_6379.pid 	#设置redis的pid文件位置
port		6379						#设置redis的监听端口号
dir 		/var/redis/6379				#设置持久化文件的存储位置 (可选)


# 拷贝脚本到开机启动脚本目录下
cp   /usr/local/redis/redis-6.0.8/utils/redis_init_script  /etc/init.d/redis_6379
cd /etc/init.d/ 
vim redis_6379
# 最上面,加入两行注释
# chkconfig:   2345 90 10
# description:  Redis is a persistent key-value database
# 修改 以下两个地址 为自己的文件地址
EXEC=/usr/local/redis/redis-6.0.8/src/redis-server
CLIEXEC=/usr/local/redis/redis-6.0.8/src/redis-cli
# 授权
 chmod 777 redis_6379
# 启动 redis
./redis_6379 start
# 执行 加入开机启动
chkconfig redis_6379 on

本文由 小马哥 创作,采用 知识共享署名4.0 国际许可协议进行许可 本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名 最后编辑时间为: 2021/07/24 12:35

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-07-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • JDK
    • 下载
      • 安装
        • 配置环境变量
        • MYSQL
          • 背景信息
            • 安装mysql
              • 配置MySQL
                • 安全性配置
                  • 重置root用户的密码
                  • 删除匿名用户账号
                  • 禁止root账号远程登录
                  • 删除test库以及对test库的访问权限
                  • 重新加载授权表
                • 远程访问MySQL数据库
                  • 配置安全组策略
                  • 修改表法
                  • 授权法
                  • 重启服务
              • Redis
                • redis下载
                  • 安装
                    • 修改配置文件
                      • 设置开机启动
                      相关产品与服务
                      云数据库 SQL Server
                      腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档