當前位置:首頁 » 存儲配置 » mysqlip存儲

mysqlip存儲

發布時間: 2023-10-16 05:50:54

㈠ Mysql存放IP地址 用數值型有什麼好處

大哥,你語法都錯了 insert into table_name values(),(),(); 一般mysql存儲ip用int型,int(10); inet_aton(ip)函數可以把ip欄位轉換為對應的整數存儲 INET_NTOA可以把整數轉換成ip欄位

㈡ k8s中的Mysql資料庫持久化存儲

 

一、配置:

環境:

CentOS7 

VMware

筆者配置了四台虛擬機:

K8S-Master節點: 3GB內存   2核CPU   20GB硬碟空間

K8S-node1節點:  2GB內存   2核CPU   30GB硬碟空間

K8S-node2節點:  2GB內存   2核CPU   30GB硬碟空間

鏡像倉庫節點:      2GB內存   2核CPU   50GB硬碟空間

二、節點規劃:

使用三台虛擬機搭建K8S集群,使用一台虛擬機搭建鏡像倉庫。

每台虛擬機配置兩塊網卡,其中一塊為「NAT模式」,用於拉取鏡像等功能。

另外一塊網卡為「僅主機模式」,用於集群節點間的通信。歸劃如下:

K8s-master節點:

僅主機模式:10.10.10.200

NAT模式:  192.168.200.130

K8S-node1節點:

僅主機模式:10.10.10.201

NAT模式:  192.168.200.131

K8S-node2節點:

僅主機模式:10.10.10.202

NAT模式:  192.168.200.132

鏡像倉庫節點:

僅主機模式:10.10.10.101

NAT模式:  192.168.200.150

三、版本信息

Linux內核版本:

Linux version 3.10.0-862.el7.x86_64 ([email protected])

(gcc version 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) )

 #1 SMP Fri Apr 20 16:44:24 UTC 2018

K8s集群版本為1.15.0版本:

四、基於StatefulSet與PV/PVC的MySql持久化存儲實驗

1. 在每個節點安裝nfs服務

在「鏡像倉庫」節點,執行以下命令:

yum install -y nfs-common nfs-utils rpcbind

在k8s集群,執行以下命令:

yum install -y nfs-utils rpcbind

2. 在「鏡像倉庫」節點下,配置nfs伺服器

mkdir /nfs_mysql

Chmod 777 /nfs_mysql/

(在測試環境中,為了不考慮用戶屬性,暫時賦予777許可權,但在生產環境不推薦這樣做)

Chown nfsnobody /nfs_mysql/

echo 「/nfs_mysql *(rw,no_root_squash,no_all_squash,sync)」 >> /etc/exports

cat /etc/exports

/nfs_mysql *(rw,no_root_squash,no_all_squash,sync)

systemctl start rpcbind

systemctl start nfs

3. 測試nfs服務是否可用

mkdir /test

showmount -e 10.10.10.101

可見/nfs_mysql *已暴露於共享目錄,接下來測試掛載是否可用:

在master節點下執行:

mount -t nfs 10.10.10.101:/nfs_mysql /test/

echo "hello-world">>/test/1.txt

在鏡像倉庫節點下查看1.txt是否存在,若存在則掛載成功:

可見nfs服務可以正常使用,接下來刪除test目錄和1.txt

在鏡像倉庫下:

[root@hub nfs_mysql]# rm -f 1.txt

在Master節點下:

[root@k8s-master ~]# umount /test/

[root@k8s-master ~]# rm -rf /test/

同理,依照以上步驟同時創建:(提供多個mysql副本進行掛載)

nfs_mysql1

nfs_mysql2

完成後需要重啟nfs服務

systemctl restart rpcbind

systemctl restart nfs

最終效果:

4. 將nfs封裝成pv

創建mysql_test文件夾,將yaml文件統一保存在此目錄下

mkdir mysql_test

cd mysql_test

vim mysql-pv.yml

mysql-pv.yml配置如下:

apiVersion: v1

kind: PersistentVolume

metadata:

  name: mysql-pv

spec:

  capacity:

    storage: 5Gi

  accessModes:

    -  ReadWriteOnce

  persistentVolumeReclaimPolicy: Retain

  storageClassName: nfs

  nfs:

    path: /nfs_mysql

    server: 10.10.10.101

---

apiVersion: v1

kind: PersistentVolume

metadata:

  name: mysql-pv1

spec:

  capacity:

    storage: 5Gi

  accessModes:

    -  ReadWriteOnce

  persistentVolumeReclaimPolicy: Retain

  storageClassName: nfs

  nfs:

    path: /nfs_mysql1

    server: 10.10.10.101

---

apiVersion: v1

kind: PersistentVolume

metadata:

  name: mysql-pv2

spec:

  capacity:

    storage: 5Gi

  accessModes:

    -  ReadWriteOnce

  persistentVolumeReclaimPolicy: Retain

  storageClassName: nfs

  nfs:

    path: /nfs_mysql2

    server: 10.10.10.101

注意:

在k8s集群15版本中recycle回收策略已被刪除,只能用retain策略或者Delete策略。這里我們使用 persistentVolumeReclaimPolicy: Retain

 

執行命令:

kubectl create -f mysql-pv.yml

kubectl get pv

如圖所示,即為Pv創建成功。

5. 部署MySQL,在mysql_test目錄下編寫mysql.yml,配置文件如下

apiVersion: v1

kind: Service

metadata:

  name: mysql

  labels:

    app: mysql

spec:

  ports:

  - port: 3306

    name: mysql

  clusterIP: None

  selector:

    app: mysql

---

apiVersion: apps/v1

kind: StatefulSet

metadata:

  name: mysql

spec:

  selector:

    matchLabels:

      app: mysql

  serviceName: "mysql"

  replicas: 3

  template:

    metadata:

      labels:

        app: mysql

    spec:

      containers:

      - name: mysql

        image: mysql:5.6

        env:

        - name: MYSQL_ROOT_PASSWORD

          value: password

        ports:

        - containerPort: 3306

          name: mysql

        volumeMounts:

        - name: mysql-persistent-storage

          mountPath: /var/lib/mysql

  volumeClaimTemplates:

  - metadata:

      name: mysql-persistent-storage

    spec:

      accessModes: ["ReadWriteOnce"]

      storageClassName: "nfs"

      resources:

        requests:

          storage: 1Gi  

執行以下命令,部署mysql服務:

kubectl create -f mysql.yml

如圖可知,mysql按StatefulSet依次創建了mysql-0 mysql-1 mysql-2

查看各個Pod部在哪個節點:

6. 通過創建臨時容器,使用MySQL客戶端發送測試請求給MySQL master節點

注意:

主機名為mysql-0.mysql;跨命名空間的話,主機名請使用mysql-0.mysql. [NAMESPACE_NAME].如果沒有指定命名空間,默認為default,即 mysql-0.mysql. default。

   

這里筆者打算關閉node2節點來模擬node2宕機,來測試是否實現數據的持久化存儲,

所以我們向node2上的mysql1寫入數據。

 

執行以下命令,訪問mysql1:

kubectl run mysql-client --image=mysql:5.6 -it --rm --restart=Never -- mysql -h mysql-1.mysql.default -p password

創建資料庫demo,並向messages表中寫入hello-world

CREATE DATABASE demo; 

CREATE TABLE demo.messages (message VARCHAR(250)); 

INSERT INTO demo.messages VALUES ('hello-world');

如圖所示

接下來我們來關閉k8s-node2虛擬機,模擬宕機

查看nodes的運行狀態,可知node2的狀態已轉變為NotReady

一段時間後,k8s將Pod MySql -1遷移到節點k8s-node1

由於時間過長,筆者把三個Pod都刪除重啟後,驗證數據:

MySQL服務恢復,數據完好無損!

㈢ IP地址存儲在mysql中用什麼欄位

用char()類型,因為IP地址基本定長,如114.114.114.114,為15個字元,最少也是如8.8.8.8,為7個字元,但非常少用這樣的IP,一般過都是12-15個字元長度,用varchar()變長類型的話會因此減慢資料庫速度

㈣ 請問怎麼用php來實現去獲取某個用戶的ip然後存到自己的資料庫mysql中,給代碼參考看看,謝謝

1.改表法。可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改
"mysql"
資料庫中
"user"
表裡的
"host"
欄位,把"localhost"改稱"%",即可。
mysql
-u
root
-pvmwaremysql>use
mysql;mysql>update
user
set
host
=
'%'
where
user
=
'root';mysql>select
host,
user
from
user;
2.授權法。例如,你想用戶myuser使用密碼mypassword通過ip地址連接到mysql伺服器,使用:
grant
all
privileges
on
*.*
to
'myuser'@'%'
identified
by
'mypassword'
with
grant
option;
如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql伺服器,並使用mypassword作為密碼
grant
all
privileges
on
*.*
to
'myuser'@'192.168.1.3'
identified
by
'mypassword'
with
grant
option;

㈤ mysql ip欄位是varbinary(4) php如何向里存放數據

IP欄位一般使用INT存儲,銷量比較高。畢竟MySQL提供了IP地址轉換函數。
inet_aton:將ip地址轉換成數字型 inet_ntoa:將數字型轉換成ip地址

熱點內容
機加工的編程 發布:2024-11-30 00:31:19 瀏覽:726
坦克世界電腦什麼配置 發布:2024-11-30 00:30:41 瀏覽:316
如何在手機設置上找到網路的密碼 發布:2024-11-30 00:18:29 瀏覽:413
和鷹加密鎖 發布:2024-11-30 00:17:17 瀏覽:555
C語言舞會 發布:2024-11-30 00:15:44 瀏覽:376
java下載我的世界 發布:2024-11-30 00:11:08 瀏覽:11
華三配置器升級失敗怎麼回事 發布:2024-11-30 00:09:23 瀏覽:841
汽車空調壓縮機壽命 發布:2024-11-30 00:06:04 瀏覽:566
電腦網路波動異常與伺服器失去連接 發布:2024-11-29 23:43:19 瀏覽:246
個人電腦與伺服器架構類似 發布:2024-11-29 23:40:59 瀏覽:704