背景:

环境注意:在用rancher搭建的k8s里,mysql是起了一个pod,镜像是网上的mysql:5.7

开发人员提出了一个报错“查询时的ONLY_FULL_GROUP_BY错误”,让我改sql_mode,当时我觉得这很好改,将数据库的配置文件添加一条sql_mode,重启数据库就行了。

但是,我起初通过rancher进入到mysql容器里面,执行命令 mysql -uroot -p密码 -e "set @@sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';" 或者是进到mysql里面执行命令或者写到配置文件里重启mysql,会出现一些问题:设置只针对新建的数据,旧的数据还是不起作用;设置只针对这次运行中的容器,下次重启更新pod,配置都会失效;写入配置文件再重启或重载mysql会出现整个pod都会更新,导致配置文件恢复到初始。

既然不能在容器里面改,也不能修改镜像,所以就从mysql的yaml文件下手。

思路:

1.创建configmap,设置配置映射

2.mysql里使用configmap挂载数据配置

mysql配置文件---configmap

apiVersion: v1

data:

mysqld.cnf:|-[mysqld]

pid-file = /var/run/mysqld/mysqld.pid

socket= /var/run/mysqld/mysqld.sock

datadir= /var/lib/mysql

#log-error = /var/log/mysql/error.log

# Bydefault we only accept connections fromlocalhost

#bind-address = 127.0.0.1# Disabling symbolic-links isrecommended to prevent assorted security risks

symbolic-links=0sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'kind: ConfigMap

metadata:

name: mysql-confignamespace: gymdev

其中,mysqld.cnf是数据库配置文件的名称,后面跟的是配置文件的内容,最后一排就是更改报错的配置;metadata--name是这个configmap的名称,后面mysql的yaml里面会调用。

mysql

apiVersion: apps/v1

kind: Deployment

metadata:

name: mysql-devnamespace: icourt-dev

labels:

app: mysql-dev

spec:

replicas:1selector:

matchLabels:

app: mysql-dev

template:

metadata:

labels:

app: mysql-dev

spec:

containers:-name: mysql

image: mysql:5.7env:-name: MYSQL_ROOT_PASSWORD

value:"密码"ports:- containerPort: 3306protocol: TCP

name: 3306tcp01

volumeMounts:- mountPath: "/var/lib/mysql"name: mysqlpv-icourt-dev

subPath: mysqldev-icourt-dev - name: config-volume

mountPath: "/etc/mysql/mysql.conf.d/"

volumes:- name: mysqlpv-icourt-dev

persistentVolumeClaim:

claimName: mysqlpvc-icourt-dev- name: config-volume

configMap:

name: mysql-config

其中,(1)表示一个挂载点的名称

(2)表示新挂载点的路径,这里就是mysql配置文件的路径

(3)表示挂载点的名称

(4)使用configmap

(5)使用名为mysql-config,configmap的name

pod中mysql配置文件修改_通过configmap更新k8s里的mysql配置文件相关推荐

  1. mysql视图中数据如何修改_怎么修改Mysql数据表中的视图

    本篇文章主要给大家介绍mysql数据表中怎么进行修改视图的操作. 关于mysql视图的基础知识,在之前的文章中也给大家详细介绍过了.这里我们再给大家先简单介绍下mysql视图. 通俗的说,视图是由SE ...

  2. 删除电脑中的mysql数据库吗_【数据库】怎么彻底删除mysql服务?

    彻底删除mysql服务的步骤: 1.关闭mysql服务 在cmd命令行输入以下命令 net stop mysql 或者 我的电脑右键->管理->服务,进入后手动关闭. 2.删除MySQL服 ...

  3. JAVA跟MYSQL数据库交互_【编写Java程序实现与Mysql数据库的连接,并交互性的实现简单查询,删除,修改,排序,显示等操作】...

    目前博主只实现了查询和插入,而且还不太会在面板对数据库语句进行更新,写完再看感觉语言有些冗杂,往后再更,大半夜写这个也是醉了呢. import javax.swing.*; import java.a ...

  4. mysql序列号生成_值得一看!数据库及Mysql入门,附详细安装教程

    #什么是数据 用来描述事物的符号记录.可以是数字.文字.图形等,有多种形式,经过数字化之后存入计算机 #什么是数据库 数据库(Database)就是一个用来存放数据库的仓库,是按照一定的数据结构来组织 ...

  5. mysql root命令_设置更改root密码、连接mysql、mysql常用命令

    目录 一.设置更改root密码 二.连接mysql 三.mysql常用命令 一.设置更改root密码 检查mysql服务是否启动 [root@minglinux-01 ~] ps aux |grep ...

  6. 服务器多出mysql帐户_在一台服务器构建多mysql 服务

    作者博客:http://windychan.cublog.cn/ 欢迎转载,但务必在转载时注明出处.[/align] ***************************************** ...

  7. mysql 开源入门_入门教程:安装配置新版MySQL 8开源数据库

    原标题:入门教程:安装配置新版MySQL 8开源数据库 [ 来自IT168] [IT168 技术]MySQL是现代应用程序编程堆栈中常见的数据库管理系统.如果您想要一个适用于您应用程序的,便于利用丰富 ...

  8. 从官网下载mysql 如何配置_从官网下载最新版Mysql并配置使用

    第一步:在百度搜索"Mysql",我们点击第一个连接,如下图所示. 第二步:点击上图的链接后我们进入到如下图所示的界面,我们点击"Downloads"子菜单的& ...

  9. mysql心得笔记_【原创】学习{我的mysql学习心得}的笔记

    标签: 万丈高楼平地起. 从最基础的做起,从最简单的做起. ---------------------------------------------------------------------- ...

最新文章

  1. java concurrenthashmap与阻塞队列
  2. 发现一篇专门吐槽 NLP 内卷现状的 ACL 论文 ...
  3. Apache Mina2.x网络通信框架使用入门
  4. php安装 pear,php pear / pecl 扩展工具的安装和使用
  5. R语言 plot()函数 基础用法
  6. wordpress主题-响应式CUI2.0翠竹林博客主题wordpress模板分享
  7. 使用asp.net mvc开发应用程序,页面中的page.IsPostback还有用处吗?
  8. 403 forbidden nginx_5,Logstash正则提取Nginx日志 - pwcc
  9. 数据库实验3 数据库的单表查询
  10. mysql临时表如何分页_sql server 与 mysql 分页查询以及创建临时表的区别
  11. 新手必备的矢量网络分析仪使用教程
  12. 程序员接私单被警方抓走,企业应不应该起诉程序员赔偿?
  13. Marshmallow 的用法
  14. Wifi认证及加密详解
  15. 第二章 信托的关系及其设立
  16. 用ajax做级联操作,学习笔记之MVC级联及Ajax操作
  17. js 空数组直接赋值与push
  18. AB实验平台在贝壳找房的设计与实践
  19. matlab 点云根据法向量投影到六个平面
  20. 音视频码率,采样率,帧率基础知识

热门文章

  1. addrinfo 结构
  2. 数据规模恼同程,混合云飘来除杂症
  3. python 反射实体,动态应用
  4. NIO中Selector分析
  5. C++语言之类class
  6. oracle删除当前用户下所有表
  7. 产品经理常犯的七大错误
  8. 分享3段平时很实用的微代码,高手莫喷
  9. 敏捷BI的业务模型是怎样的,为何能替代手动建模?
  10. strcat在某种特定条件下的优化