登录
首页 >  数据库 >  MySQL

容器化应用: Openshift 部署 MySQL数据库服务: 上篇

来源:SegmentFault

时间:2023-02-24 12:39:59 114浏览 收藏

积累知识,胜过积蓄金银!毕竟在##column_title##开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《容器化应用: Openshift 部署 MySQL数据库服务: 上篇》,就带大家讲解一下MySQL、openshift知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

创建应用

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  creationTimestamp: '2017-10-22T13:04:04Z'
  name: db.mysql.data
  namespace: reactive-microservices
  resourceVersion: '7789'
  selfLink: >-
    /api/v1/namespaces/reactive-microservices/persistentvolumeclaims/db.mysql.data
  uid: 7adb87cd-b729-11e7-8e63-665a136940b1
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 128Mi
status:
  phase: Pending

通过 oc get 命令查看持久卷被绑定到哪里了

➜  .minishift oc get persistentvolume |grep mysql
pv0020    100Gi      RWO,ROX,RWX   Recycle         Bound       reactive-microservices/db.mysql.data                            1d

➜  .minishift oc get persistentvolumeclaim       
NAME            STATUS    VOLUME    CAPACITY   ACCESSMODES   STORAGECLASS   AGE
db.mysql.data   Bound     pv0020    100Gi      RWO,ROX,RWX                  1m

clipboard.png

我们看到我们的持久化卷请求(PVC: Persistent Volume Claim), 被绑定到了容量为100Gi的设备pv0020上了.

挂载

clipboard.png

进入DC(上图 Applications > Deployments), 选中 mysql-57-centos7 这个DC. 删除已经挂载的容器内部卷. 并点击

Add Storage
添加签名创建的卷.

注意: 因为默认

mysql-57-centos7
部署配置的数据目录默认挂载位置是
/var/lib/mysql/data
, 因此为了避免路径冲突, 需要删除内置的卷. 因为修改了配置, Openshift 会自动重新触发一次
mysql-57-centos7
的部署.

现在可以登录容器创建一些测试数据了

sh-4.2$ oc rsh mysql-57-centos7-10-sffhd

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.16 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| data               |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

mysql> use data;
Database changed
mysql> show tables;
+----------------+
| Tables_in_data |
+----------------+
| users          |
+----------------+
1 row in set (0.00 sec)

mysql> select * from users;
+----+--------------+
| id | username     |
+----+--------------+
|  1 | admin        |
|  2 | system:admin |
|  3 | developer    |
+----+--------------+
3 rows in set (0.00 sec)

mysql> 

注意: 你现在可以重新部署一次这个DC来看看新实例化的容器MySQL的数据有没有丢失, 如下:

clipboard.png

本篇关于《容器化应用: Openshift 部署 MySQL数据库服务: 上篇》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于数据库的相关知识,请关注golang学习网公众号!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表