Podman安装运行mysql8

  1. 安装环境: 阿里云centos7.9
    podman1.6.4
    mysql8.0.28

一、安装podman

yum install podman

中途出现

输入 y 敲enter继续

安装podman完成

二、拉取并启动mysql

  1. 通过podman搜索mysql
    podman search mysql
    
  2. 从结果里找到自己想要的镜像然后进行拉取
    podman pull docker.io/library/mysql
    
  3. podman images 查看镜像列表
  4. 创建mysql8挂载路径,并赋予相应权限
    mkdir -p /usr/local/mysql8/conf /usr/local/mysql8/data /usr/local/mysql8/log
    
    chmod -R 744 /usr/mysql/
    
  5. mysql配置文件: /usr/local/mysql8/conf/my.cnf 详情
    [mysqld]
    # 设置3306端口
    port=3306
    # 设置mysql的安装目录
    # basedir=/usr/local/mysql8
    # 设置mysql数据库的数据的存放目录
    datadir=/usr/local/mysql8/data
    # 允许最大连接数
    max_connections=1000
    # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
    max_connect_errors=100
    # 服务端使用的字符集默认为UTF8
    character-set-server=utf8mb4
    # 创建新表时将使用的默认存储引擎
    default-storage-engine=INNODB
    # 默认使用“mysql_native_password”插件认证
    authentication_policy=mysql_native_password
    #是否对sql语句大小写敏感,1表示不敏感  需要在初始化时设置
    # lower_case_table_names = 1
    #MySQL连接闲置超过一定时间后(单位:秒)将会被强行关闭
    #MySQL默认的wait_timeout  值为8个小时, interactive_timeout参数需要同时配置才能生效
    interactive_timeout = 1800
    wait_timeout = 1800
    #Metadata Lock最大时长(秒), 一般用于控制 alter操作的最大时长sine mysql5.6
    #执行 DML操作时除了增加innodb事务锁外还增加Metadata Lock,其他alter(DDL)session将阻塞
    lock_wait_timeout = 3600
    #内部内存临时表的最大值。
    #比如大数据量的group by ,order by时可能用到临时表,
    #超过了这个值将写入磁盘,系统IO压力增大
    tmp_table_size = 64M
    max_heap_table_size = 64M
    # MySQL服务端字符集
    character_set_server = utf8mb4
    # 设置默认存储引擎为InnoDB
    default-storage-engine = InnoDB
    # 默认为ON,设置为OFF,关闭事务自动提交
    autocommit = OFF
    transaction_isolation = READ-COMMITTED
    # 错误日志存放路径
    log_error = /usr/local/mysql8/log/log.err
    # 全局动态变量,默认3,范围:1~3
    # 表示错误日志记录的信息,1:只记录error信息;2:记录error和warnings信息;3:记录error、warnings和普通的notes信息
    log_error_verbosity = 2
    
    [client]
    # 设置mysql客户端连接服务端时默认使用的端口
    port=3306
    default-character-set=utf8mb4
    
    [mysql]
    # 设置mysql客户端默认字符集
    default-character-set=utf8mb4
    
  6. 核心代码:
    [root@iZuf6eyirg61o0pawi6yk6Z /]# podman run -itd --name mysql8 \
    -e TZ="Asia/Shanghai" \
    -v /usr/local/mysql8/conf/my.cnf:/etc/my.cnf \
    -v /usr/local/mysql8/data:/var/lib/mysql \
    -p 3306:3306 \
    -e MYSQL_ROOT_PASSWORD=123456 \
    -d mysql --lower_case_table_names=1
    
    # -e MYSQL_ROOT_PASSWORD: 设置mysql密码
    # /etc/my.cnf mysql配置文件,有的是/etc/mysql/my.cnf
    # -v /usr/local/mysql8/data: /var/lib/mysql: 挂载磁盘实现数据持久化
      /var/lib/mysq由来: podman inspect xxx(镜像id)  结果里查找
      "Volumes": {
                 "/var/lib/mysql": {}
             }
    # --lower_case_table_names=1: 忽略大小写,podman mysql默认区分大小写的
    
  7. 通过 podman ps 查看正在运行的容器;
    podman logs mysql8 查看运行日志;

三、连接mysql

  1. 进入mysql容器
    podman exec -it mysql8 /bin/bash
    
  2. 登录mysql
    mysql -uroot -p
    
  3. podman mysql默认支持远程连接,使用Navicat远程连接,查看配置忽略大小写是否成功
    SHOW GLOBAL VARIABLES LIKE '%lower_case%';
    
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
当使用Docker安装MySQL镜像后,如果无法正常运行,可能有以下几个原因: 1. 镜像下载和安装问题:首先,确保你的机器可以正常连接到Docker镜像仓库。如果你的服务器无网络连接,你需要事先下载MySQL镜像文件并导入到Docker中。可以使用离线方式下载镜像文件并将其拷贝到服务器上进行安装[1]。 2. 镜像配置问题:在运行MySQL容器之前,你需要根据你的需求对容器进行相应的配置。例如,设置MySQL的root密码、指定数据存储路径、指定端口等等。确保在运行容器时将这些配置项正确地传递给Docker命令。 3. 端口冲突问题:如果你在运行MySQL容器时指定了一个已经被占用的端口,容器将无法启动。请确保所选择的端口没有被其他服务占用。 4. 硬件要求问题:如果你的服务器硬件配置不满足MySQL的最低要求,容器可能无法正常运行。请确保你的服务器满足MySQL的硬件要求。 解决这些问题的方法如下: 1. 检查网络连接:确保你的服务器能够连接到Docker镜像仓库。如果无法连接,可以考虑使用离线方式下载镜像文件。 2. 确认镜像配置:检查你在运行MySQL容器时所使用的配置项是否正确。确保你已经设置了正确的root密码、数据存储路径以及端口等配置。 3. 检查端口冲突:查看你在运行容器时所指定的端口是否已被其他服务占用。如果是,请选择一个未被占用的端口。 4. 检查硬件要求:确认你的服务器硬件配置是否满足MySQL的最低要求。如果硬件不足,考虑升级服务器或者使用更轻量级的数据库解决方案。 总结起来,如果你无法运行Docker安装MySQL镜像,可以检查网络连接、镜像配置、端口冲突和硬件要求等方面的问题,并据此进行相应的调整和修复。<span class="em">1</span> #### 引用[.reference_title] - *1* [docker离线mysql镜像.zip](https://download.csdn.net/download/qq_43692950/12942211)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值