1、官方二进制tarball【次要】
常用于多版本并存/不可写/opt的场景
2、RPM/APT仓库【主要】
centos用什么版本的,一般都是用的什么镜像,有什么区别对于数据库来说用那个好。
centos7.x 只有yum
centos8.x 有dnf工具包
1、安装
#下载源
wget https://repo.mysql.com/mysql84-community-release-el7-2.noarch.rpm
#解压MySQL
sudo rpm -Uvh mysql84-community-release-el7-2.noarch.rpm
#安装MySQL
sudo yum install -y mysql-community-server


2、启动、查看、登录
#启动并开启开机自启
sudo systemctl enable --now mysqld
#查看状态
sudo systemctl status mysqld --no-pager
#查询数据库自动的密码
sudo grep 'temporary password' /var/log/mysqld.log
mysql -u root -p
到这里就成功进入环境了。
3、改密码,必须改
alter user 'root'@'localhost' IDENTIFIED BY 'NewPassword';
4、 生产环境一般最好做以下隔离
delete from mysql.user where user='';
flush privileges;
![]()
3、源码编译
只占极少数需要Asan或裁剪功能的团队
4、Docker官方镜像【主要】
1、跟新系统并且安装常用命令:安装docker容器,单容器管理
#删除Docker相关源
sudo rm -f /etc/yum.repos.d/docker*.repo
#卸载旧版本的Docker和相关的软件包
sudo yum -y remove \
docker-ce \
containerd.io \
docker-ce-rootless-extras \
docker-buildx-plugin \
docker-ce-cli \
docker-compose-plugin
#Docker默认保存位置是/var/lib/docker/,卸载Docker时,镜像、容器、存储卷和网络不会被自动删除。如果您想要删除这些数据,需要手动删除。
#添加Docker软件包源
sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
#安装Docker社区版本,容器运行时containerd.io,以及Docker构建和Compose插件
sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
#启动Docker
sudo systemctl start docker
#设置Docker守护进程在系统启动时自动启动
sudo systemctl enable docker
#验证
sudo docker -v
#配置加速镜像:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
#下面是centos系统的
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://lg69zfzn.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
#拉取Nginx镜像
sudo docker pull nginx:latest
#创建Dockerfile设置Nginx作为基础镜像,并在Web服务器的根目录创建一个显示Hello World!的index.html文件。
sudo tee Dockerfile <<-'EOF'
FROM nginx:latest
RUN echo 'Hello World!' > /usr/share/nginx/html/index.html
EOF
#构建镜像,镜像名称为hello-world
sudo docker build . -t hello-world:latest
#启动Web程序镜像的容器,并且命名容器名称为hello-world。
sudo docker run -d -p 80:80 --name hello-world hello-world:latest
#验证Web程序是否正确显示Hello World!。
curl http://localhost
2、docker里面安装MySQL数据库
#拉取 MySQL 镜像 tag_name:版本
docker pull mysql:tag_name
#创建数据卷 mysql_data:卷名
docker volume create mysql_data
#创建并启动 MySQL 容器
bash
docker run -d \
--name mysql-container \
-e MYSQL_ROOT_PASSWORD=your_password \
-e MYSQL_DATABASE=mydb \
-e MYSQL_USER=myuser \
-e MYSQL_PASSWORD=mypassword \
-p 3306:3306 \
-v mysql_data:/var/lib/mysql \
mysql:tag
#验证容器状态
docker ps -a
#检测日志,如果异常退出
docker logs 容器名称
#连接MySQL容器
docker exec -it mysql-container mysql -u root -p
5、docker-compose多实例【主要】
#安装 centos7.x
sudo yum -y install docker-compose-plugin
#查看版本:
sudo docker compose version
#创建编排文件,添加Mysql与WordPress
sudo tee docker-compose.yaml <<-'EOF'
version: '3.1'
services:
wordpress:
image: wordpress
restart: always
ports:
- "80:80"
environment:
#数据库地址
WORDPRESS_DB_HOST: db
#数据库用户名
WORDPRESS_DB_USER: wordpress
#数据库密码
WORDPRESS_DB_PASSWORD: 123456
#数据库名称
WORDPRESS_DB_NAME: wordpress
volumes:
- wordpress:/var/www/html
db:
image: mysql:5.7
restart: always
ports:
- "3306:3306"
environment:
#数据库名称
MYSQL_DATABASE: wordpress
#数据库用户名
MYSQL_USER: wordpress
#数据库密码
MYSQL_PASSWORD: 123456
#数据库ROOT用户密码
MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes:
- db:/var/lib/mysql
volumes:
wordpress:
db:
EOF
#启动服务容器。
sudo env "PATH=$PATH" docker compose up -d
#添加ecs安全组,比如当前计算机的公网ip
#可以通过cmd查询:curl.exe ifconfig.me 获取公网ip
http://云服务器ECS实例的公网IP
6、macos/windows图形安装如果
1974

被折叠的 条评论
为什么被折叠?



