1.拉取镜像
docker pull centos:7.2.1511
# centos 系统名称
# 7.2.1511 系统版本
2.运行
2.1 创建正常运行容器(推荐)
docker run -it <ImageID> /bin/bash
# 进入容器
docker attach <ContainerID>
2.2 创建可以使用特权命令的容器
docker run -it --privileged <ImageID > /usr/sbin/init
# 如要使用mysql,必须进行挂载
docker run -itd --name=ldap --privileged=true -v /sys/fs/cgroup:/sys/fs/cgroup <ImageID> /usr/sbin/init
# 如要将端口映射到宿主机,必须加-p
docker run -itd --name=ldap --privileged=true -p 127.0.0.1:8848:8848 -p 127.0.0.1:3306:3306 -v /sys/fs/cgroup:/sys/fs/cgroup <ImageID> /usr/sbin/init
# 进入容器
docker exec -it <ContainerID> /bin/bash
检查系统版本
cat /etc/redhat-release
# CentOS Linux release 7.7.1908 (Core)
2.安装MySQL
将宿主机的安装包复制到容器内
docker cp /opt/mysql/mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar <ContainerID>:/opt/mysql/
进入容器
解压安装包
tar -xvf mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar
安装
rpm -ivh mysql-community-common-5.7.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.29-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.29-1.el7.x86_64.rpm
安装server时会出现 错误,如图
运行命令
yum -y install perl.x86_64
yum install -y libaio.x86_64
yum -y install net-tools.x86_64
代码执行后再次安装server,出现如图错误
执行代码
yum -y install numactl
问题参考
再次安装server,成功
MySQL服务相关命令
# 启动服务
systemctl start mysqld
# 查看服务状态
systemctl status mysqld
# 停止服务
systemctl stop mysqld
如启动有错误,可查看日志
# 查看日志存放位置
cat /etc/my.cnf
# 查看日志
cat /var/log/mysqld.log
服务启动后使用临时密码登录mysql
为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error log的位置,如果安装的是RPM包,则默认是/var/log/mysqld.log。
只有启动过一次mysql才可以查看临时密码
grep 'temporary password' /var/log/mysqld.log
(如果之前安装过MySQL则这里可能会有多个密码,用最后一个,注意这个密码输入时是可以粘贴的)
登录并修改密码
如果密码设置的太简单会提示错误
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
必须修改两个全局参数:
set global validate_password_policy=0;
set global validate_password_length=1;
再次修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
成功
创建数据库
create database `xxx` default character set utf8mb4 collate utf8mb4_general_ci;
导入sql文件
source /opt/java/xxx.sql
远程链接mysql
use mysql;
select host,user,password from user;
update user set host = '%' where user ='root';
flush privileges; #刷新用户权限表
select host,user,password from user where user='root';
卸载MySQL
查看是否有安装的mysql
rpm -qa | grep -i mysql
卸载 --nodeps不检查依赖关系,强制卸载
rpm -e --nodeps mysql-community-server-5.7.29-1.el7.x86_64
rpm -e --nodeps mysql-community-client-5.7.29-1.el7.x86_64
rpm -e --nodeps mysql-community-libs-compat-5.7.29-1.el7.x86_64
rpm -e --nodeps mysql-community-libs-5.7.29-1.el7.x86_64
rpm -e --nodeps mysql-community-common-5.7.29-1.el7.x86_64
删除残留的mysql目录或文件
# 查询mysql安装目录
whereis mysql
find / -name mysql
# 删除mysql 配置文件
rm -rf /usr/my.cnf
# 删除mysql开机自启动服务
chkconfig --list | grep -i mysql
chkconfig --del mysqld
卸载完成
安装redis
下载合适的安装包
http://download.redis.io/releases/
上传到Linux中
解压压缩包
tar -zxvf redis-4.0.6.tar.gz
yum安装gcc依赖
yum install gcc
跳转到redis解压目录下
cd redis-4.0.6
编译安装
make
若出现如图的问题
运行命令
yum -y install gcc automake autoconf libtool make
# 再次运行make命令
make
# 完成后进入src目录运行make install 命令
cd src/
make install
启动redis的两种方式
方式一
切换到redis src目录下
直接启动redis
cd src
./redis-server
如上图:redis启动成功,但是这种启动方式需要一直打开窗口,不能进行其他操作,不太方便。
方式二
以后台进程方式启动redis
修改redis.conf文件
切换到redis安装目录下
vi redis.conf
将
daemonize no
改为
daemonize yes
指定redis.conf文件启动
redis-server redis.conf
关闭redis进程
使用ps -aux | grep redis查看redis进程
ps -aux | grep redis
使用kill命令杀死进程
kill -9 6018