前言
adminer 是 php 语言构建的数据库管理工具,可以在浏览器上管理数据库,因为我们的数据库部署在 kubernetes ,配套使用基于浏览器的 数据库管理工具,可以更方便的管理,而且不需要把安装在 kubernetes 集群里的数据库暴露出来,提高了数据保密性。
Adminer目前支持管理 mysql/postgresql/mssql/oracle等常用数据库,比收费的navicat香。相比java开发的dbweaver,响应速度更快,我们团队小伙伴已经完全转移到使用这个小工具来管理开发数据库。
准备配置文件
我们使用 configmap 保存 adminer 需要的环境变量。比如通过 ADMINER_DESIGN 设置皮肤,通过 ADMINER_PLUGINS 设置需要加载的插件。
pappu687 是我觉得比较漂亮简介的皮肤。
apiVersion: v1kind: ConfigMapmetadata: name: adminerdata: ADMINER_DESIGN: pappu687 ADMINER_PLUGINS: tables-filter
在前面的步骤准备好各种配置信息后,就可以开始部署 adminer 服务了。
apiVersion: apps/v1kind: Deploymentmetadata: labels: app: adminer name: adminerspec: replicas: 1 selector: matchLabels: app: adminer template: metadata: labels: app: adminer spec: containers: - name: adminer image: 'adminer' ports: - name: http-9000 protocol: TCP containerPort: 9000 envFrom: - configMapRef: name: adminer
创建供集群内访问的 service
apiVersion: v1kind: Servicemetadata: name: adminerspec: selector: app: adminer ports: - protocol: TCP port: 9000 targetPort: http-9000
创建集群外访问的 Ingress
kind: IngressapiVersion: networking.k8s.io/v1metadata: name: adminerspec: ingressClassName: nginx rules: - host: adminer.xxx.cn http: paths: - path: / pathType: ImplementationSpecific backend: service: name: adminer port: number: 9000
验证
输入https://adminer.xxx.cn,就可以看到adminer登录界面
输入正确的数据库连接信息后
可以可以执行sql
客户创建表
还可以修改表结构,维护数据,创建和用户,导入导出数据等操作。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。