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