CentOS 7.9 安装 MySQL Redis
# CentOS 7.9 安装 MySQL Redis安装包网上有
## MySQL
使用远程连接工具连接 CentOS 服务器,将 MySQL 压缩包上传到服务器上。
1. 根目录创建 app 文件夹,把JDK压缩包通过xftp传到目标服务器
2. cd /app #进入根目录
3. tar -xvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
4. mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql
5. groupadd mysql# 添加 mysql 用户组
6. useradd -r -g mysql mysql
7. mkdir -p /data/mysql# 创建数据目录
8. chown mysql:mysql -R /data/mysql (**将 /data/mysql 目录的所有者指定为 mysql 组下的 mysql 用户**)
9. vim /etc/my.cnf
```conf
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
\#character config
character_set_server=utf8
symbolic-links=0
explicit_defaults_for_timestamp=true
```
10. cd`/usr/local/mysql/bin/ ` #进入mysql的bin目录
11. `./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize` #初始化**初始化完成后可能还没生成密码,这里会有提示,可以先用临时密码登录,然后登录进去再修改密码**
12. `cat /data/mysql/mysql.err` 查看密码(**没有密码时可先不执行此步骤**)
13. `cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql`\#将mysql.server放置到/etc/init.d/mysql中
```sh
@localhost mysql]# mkdir /var/log/mariadb
# touch /var/log/mariadb/mariadb.log
# chown -R mysql:mysql /var/log/mariadb/
# /usr/local/mysql/support-files/mysql.server start
```
14. service mysql start(**启动可能会失败,需要执行上面的四个语句**)
15. ps -ef | grep mysql
16. ./mysql -u root -p #修改密码 **这里进来以后先使用刚才的临时密码登录,登录成功后再执行以下命令**
17. SET PASSWORD = PASSWORD('root');
18. ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
19. FLUSH PRIVILEGES;(**刷新权限**)
20. use mysql # 远程连接配置
21. update user set host = '%' where user = 'root';
22. FLUSH PRIVILEGES;(**刷新权限**)
23. 新安装mysql5.7版本后,linux环境下默认是大小写敏感的。
可以在客户端执行以下命令:
SHOW VARIABLES LIKE '%case%'
可以看到 lower_case_table_names 的值是 0,
我们要做的就是把它设置成 1.
具体步骤如下:
- 使用 vi /etc/my.cnf, 打开mysql 的配置文件, 在 mysqld 这个节点下,
加入:`lower_case_table_names=1`
注意: 一定要放在 mysqld 节点下 , 放在其他节点下, 会不生效
- 设置完后, 保存
- 重启mysql 服务 进入mysql的bin目录,**执行service mysql stop命令停止,执行service mysql start开启**
- 再执行
- SHOW VARIABLES LIKE '%case%'可以看到, 已经变成 1 了.
- 在重启mysql 服务时, 会用到 restart 命令
`service mysqld restart `
可能会出现
`Failed to restart mysqld.service: Unit not found. `
执行 chkconfig --list, 找到mysql 服务的具体名称, 比如是 mysqldddd
然后执行
`service mysqldddd restart `
会看到
`Shutting down MySQL....[ OK ] Starting MySQL.[ OK ]`
## Redis
### Linux 基本配置
1. 停止firewalld服务
`systemctl stop firewalld`
2. 禁止firewalld开机启动
`systemctl disable firewalld`
>1、临时关闭
>
> setenforce 0 //-----------------------------------关闭SELinux
>
> 2、永久关闭 SELinuxsed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
### 安装步骤
3. 上传到Linux的 /mnt/ 文件目录下
4. 进入到/mnt/目录中,解压 redis-5.0.7.tar.gz,并把redis-5.0.7移动到/usr/local/ 目录下
```shell
cd /mnt/
tar xzf redis-5.0.7.tar.gz
mv redis-5.0.7 /usr/local/
```
5. 在线安装gcc环境
```shell
yum install gcc-c++
# 或者把七个rpm文件上传服务器后执行
rpm -Uvh *.rpm --nodeps –force
```
6. 进入到 /usr/local/redis-5.0.7/ 目录下,进行编译与安装
```shell
cd /usr/local/redis-5.0.7/
make
cd ./src
make install
```
7. 为了方便管理,将Redis文件中的conf配置文件和常用命令移动到统一文件中
```shell
(1)创建bin和etc文件夹
mkdir bin
mkdir etc
(2)将redis-5.0.7目录下的 redis.conf 移动到 redis-5.0.7目录下的etc文件夹下
mv redis.conf ./etc/
cd ./src/
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server /usr/local/redis-5.0.7/bin/
```
8. 进入到 /usr/local/redis-5.0.7/etc/ 目录下 `cd /usr/local/redis-5.0.7/etc/`
9. 编辑 redis.conf 配置文件,设置后台启动 redis 服务 vi redis.conf
```shell
daemonize属性改为yes(表明需要在后台运行)
bind 127.0.0.1 这一行给注释掉(**暂时没做**)远程连接
protected-mode 设置成no(**暂时没做**) 外部网络访问 redis server 方式
\# requirepass foobared--删除前面的注释符号#,并把foobared修改成自己的密码
```
10. 设置Redis开机启动 vi /etc/rc.d/rc.local
```shell
添加如下代码到 /etc/rc.d/rc.local 中:
`/usr/local/redis-5.0.7/bin/redis-server /usr/local/redis-5.0.7/etc/redis.conf`
```
11. 切换到 /usr/local/redis-5.0.7/bin/ 目录下执行 redis-server 命令
`cd /usr/local/redis-5.0.7/bin/`
12. 使用 /usr/local/redis-5.0.7/etc/redis.conf配置文件来启动redis服务
` ./redis-server /usr/local/redis-5.0.7/etc/redis.conf`
13. 出现以下信息,表示安装成功
```shell
# ./redis-server /usr/local/redis-5.0.7/etc/redis.conf
7053:C 23 Jul 2023 22:15:07.712 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
7053:C 23 Jul 2023 22:15:07.712 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=7053, just started
7053:C 23 Jul 2023 22:15:07.712 # Configuration loaded
```
为什么要永久关闭防火墙{:1_907:} 谢谢楼主,学习了 用docker安装吧 这个简单点 centos 不更了 现在单位都在用ubuntu 如果是在公网环境不要永久关闭防火墙,而是设置防火墙策略 tanzhiwei 发表于 2023-7-24 10:23
为什么要永久关闭防火墙
{:1_926:}网上抄的呗,这还用想 感谢分享 这个必须赞!收藏 肥猫警长 发表于 2023-7-24 10:57
网上抄的呗,这还用想
小白看见估计就照做了{:1_926:}