【快捷部署】010_MySQL(5.7.27)

发布于:2024-03-29 ⋅ 阅读:(23) ⋅ 点赞:(0)

ITHW10mysql.jpg


📣【快捷部署系列】010期信息

编号 选型 版本 操作系统 部署形式 部署模式 复检时间
010 MySQL 5.7.27 Ubuntu 20.04 Docker 单机 2024-03-28

一、快捷部署

#!/bin/bash
#################################################################################
# 作者:cxy@toc 2024-03-27                                                  
# 功能:自动部署MySQL(Docker方式) 
# 说明:如果已安装了Docker,请注释掉 install_docker,避免重复安装                                                                 
#################################################################################

install_docker(){
#更新apt源
apt-get update

#安装依赖包以允许APT通过HTTPS使用存储库
apt-get install -y apt-transport-https ca-certificates curl software-properties-common

#添加Docker的官方GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

#设置stable存储库
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

#更新apt源
apt-get update

#查看docker-ce可安装的版本
#apt-cache madison docker-ce

#安装指定版本
apt-get -y install docker-ce=5:25.0.5-1~ubuntu.20.04~focal docker-ce-cli=5:25.0.5-1~ubuntu.20.04~focal containerd.io

#查看Docker版本
docker -v

#添加开机自启动
systemctl enable docker

echo "Docker 安装完毕!"
}
info(){
  echo -e "\033[34m 【`date '+%Y-%m-%d %H:%M:%S'`\033[0m" "\033[35m$1\033[0m "
}

info1(){
  echo -e "\033[31m 【`date '+%Y-%m-%d %H:%M:%S'`\033[0m" "\033[35m$1\033[0m "
}

install_mysql(){

 read -p "请输入mysql数据持久化存储目录(/opt/mysql):" mysql_home
 read -p "请输入mysql容器启动的容器名称(mysql57):" mysql_name
 read -p "请输入mysql容器启动的镜像版本(mysql:5.7.27):" mysql_version
 read -p "请输入mysql容器启动的root密码(123qwE):" mysql_password
 read -p "请输入mysql容器启动的初始端口(53316):" mysql_port

 MYSQL_HOME="${mysql_home:-/opt/mysql}"
 mysql_name="${mysql_name:-mysql57}"
 mysql_images="${mysql_version:-mysql:5.7.27}"
 mysql_passwd="${mysql_password:-123qwE}"
 mysql_port="${mysql_port:-53316}"

 if [ -z ${mysql_home} ] && [ -z ${mysql_name} ] && [ -z ${mysql_version} ]&& [ -z ${mysql_password} ]&& [ -z ${mysql_port} ];then
   info1 "请根据提示,输入所有的值"
   exit 0
 else
   info "开始部署启动MySQL..."

   docker run -d -p ${mysql_port}:3306 --name ${mysql_name} -v ${MYSQL_HOME}:/var/lib/mysql  \
      -e MYSQL_ROOT_PASSWORD=${mysql_passwd} -u root --privileged=true  ${mysql_images} &>/dev/null
   
   info "MySQL部署完毕~"

 fi
}
install_docker
install_mysql

使用方法:

$ vim install-mysql57-ubuntu20.sh
$ chmod +x install-mysql57-ubuntu20.sh
$ ./install-mysql57-ubuntu20.sh
# 感谢淘客科技提供的实验资源环境

mysql成功安装.png


二、入门体验

#进入容器
$ docker exec -it mysql57 bash

#连接mysql
mysql -u root -p
#创建数据库
mysql> CREATE DATABASE demo CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

#显示现有数据库
mysql> show databases;

#切换数据库
mysql> USE mysql;

#查用户信息
select host,user,authentication_string from user; 

#切换数据库
mysql> USE demo;

#创建表
mysql> CREATE TABLE t_users (
    id_ INT AUTO_INCREMENT PRIMARY KEY,
    username_ VARCHAR(50) NOT NULL,
    email_ VARCHAR(100) NOT NULL,
    birthdate_ DATE,
    is_active_ BOOLEAN DEFAULT TRUE
);

# 查看存在的表
mysql> show tables;

# 插入数据
INSERT INTO t_users (username_, email_, birthdate_, is_active_) VALUES ('cxy', 'cxy@toctalk.com.cn', '1986-10-24', true);
INSERT INTO t_users (username_, email_, birthdate_, is_active_) VALUES ('zhangsan', 'zs@toctalk.com.cn', '2000-10-24', true);
INSERT INTO t_users (username_, email_, birthdate_, is_active_) VALUES ('lisi', 'ls@toctalk.com.cn', '2024-10-24', true);

# 查询数据
mysql> select * from t_users;

# 更新数据
mysql> UPDATE t_users SET is_active_=FALSE where id_='1';

# where条件查询数据
mysql> select * from t_users where id_='1';

# 删除数据
mysql> delete from t_users where id_='1';

mysql语句.png


由于是入门系列,所以仅列举了几个简单的场景。
更多信息可访问官网:https://www.mysql.com
或关注后续相关博文



往期精彩内容推荐

【快捷部署】009_Redis(6.2.14)
【快捷部署】008_Docker(25.0.5)
【快捷部署】007_Tomcat(8.5.79)
【快捷部署】006_DolphinScheduler(3.2.0)
云原生:重塑未来应用的基石


本文含有隐藏内容,请 开通VIP 后查看