最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL中數(shù)據(jù)庫(kù)備份恢復(fù)的常用方法詳解

 更新時(shí)間:2026年04月28日 09:21:46   作者:長(zhǎng)戀離亭  
本文深入探討了數(shù)據(jù)庫(kù)備份的重要性和分類(lèi),詳細(xì)講解了MySQL完全備份與增量備份的實(shí)現(xiàn)方法,包括冷備份、熱備份、溫備份和基于二進(jìn)制日志的增量恢復(fù)技術(shù),希望對(duì)大家有所幫助

一、數(shù)據(jù)庫(kù)備份的分類(lèi)

1.1 數(shù)據(jù)備份的重要性

  • 在生產(chǎn)環(huán)境中,數(shù)據(jù)的安全性至關(guān)重要
  • 任何數(shù)據(jù)的丟失都可能產(chǎn)生嚴(yán)重的后果
  • 造成數(shù)據(jù)丟失的原因
    • 程序錯(cuò)誤
    • 人為操作錯(cuò)誤
    • 運(yùn)算錯(cuò)誤
    • 磁盤(pán)故障
    • 災(zāi)難(如火災(zāi)、地震)和盜竊

1.2 數(shù)據(jù)庫(kù)備份的分類(lèi)

從物理與邏輯的角度,備份可分為

  • 物理備份:對(duì)數(shù)據(jù)庫(kù)操作系統(tǒng)的物理文件(如數(shù)據(jù)文件、日志文件等)的備份
  • 邏輯備份:對(duì)數(shù)據(jù)庫(kù)邏輯組件(如:表等數(shù)據(jù)庫(kù)對(duì)象)的備份

物理備份方法

  • 冷備份(脫機(jī)備份) :是在關(guān)閉數(shù)據(jù)庫(kù)的時(shí)候進(jìn)行的
  • 熱備份(聯(lián)機(jī)備份) :數(shù)據(jù)庫(kù)處于運(yùn)行狀態(tài),依賴于數(shù)據(jù)庫(kù)的日志文件
  • 溫備份:數(shù)據(jù)庫(kù)鎖定表格(不可寫(xiě)入但可讀)的狀態(tài)下進(jìn)行備份操作

從數(shù)據(jù)庫(kù)的備份策略角度,備份可分為

  • 完全備份:每次對(duì)數(shù)據(jù)庫(kù)進(jìn)行完整的備份
  • 差異備份:備份自從上次完全備份之后被修改過(guò)的文件
  • 增量備份:只有在上次完全備份或者增量備份后被修改的文件才會(huì)被備份

1.3 常見(jiàn)的備份方法

物理冷備

  • 備份時(shí)數(shù)據(jù)庫(kù)處于關(guān)閉狀態(tài),直接打包數(shù)據(jù)庫(kù)文件
  • 備份速度快,恢復(fù)時(shí)也是最簡(jiǎn)單的

專用備份工具mydump或mysqlhotcopy

  • mysqldump常用的邏輯備份工具
  • mysqlhotcopy僅擁有備份MyISAM和ARCHIVE表

啟用二進(jìn)制日志進(jìn)行增量備份:進(jìn)行增量備份,需要刷新二進(jìn)制日志

第三方工具備份:免費(fèi)的MySQL熱備份軟件Percona XtraBackup

二、MySQL完全備份

  • 是對(duì)整個(gè)數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)結(jié)構(gòu)和文件結(jié)構(gòu)的備份
  • 保存的是備份完成時(shí)刻的數(shù)據(jù)庫(kù)
  • 是差異備份與增量備份的基礎(chǔ)

優(yōu)點(diǎn)

  • 備份與恢復(fù)操作簡(jiǎn)單方便

缺點(diǎn)

  • 數(shù)據(jù)存在大量的重復(fù)
  • 占用大量的備份空間
  • 備份與恢復(fù)時(shí)間長(zhǎng)

2.1 數(shù)據(jù)庫(kù)完全備份分類(lèi)

物理冷備份與恢復(fù)

  • 關(guān)閉MySQL數(shù)據(jù)庫(kù)
  • 使用tar命令直接打包數(shù)據(jù)庫(kù)文件夾
  • 直接替換現(xiàn)有MySQL目錄即可

mysqldump備份與恢復(fù)

  • MySQL自帶的備份工具,可方便實(shí)現(xiàn)對(duì)MySQL的備份
  • 可以將指定的庫(kù)、表導(dǎo)出為SQL腳本
  • 使用命令mysq|導(dǎo)入備份的數(shù)據(jù)

2.2 MySQL物理冷備份及恢復(fù)

物理冷備份

[root@localhost mysql]# systemctl stop mysqld.service
[root@localhost ~]# cd /usr/local/mysql/
[root@localhost mysql]# tar zcvf /opt/mysql_all-$(date +%F).tar.gz data/
[root@localhost mysql]# cd /opt
[root@localhost opt]# ls
mysql_all-2020-08-18.tar.gz

恢復(fù)數(shù)據(jù)庫(kù)

[root@localhost opt]# cd /usr/local/mysql/
[root@localhost mysql]# rm -rf data/     '刪除數(shù)據(jù)庫(kù)文件'
[root@localhost mysql]# mysql -uroot -p
mysql> show databases;             '此時(shí)數(shù)據(jù)庫(kù)文件消失'
+--------------------+
| Database           |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.00 sec)
[root@localhost mysql]# cd /opt
[root@localhost opt]# tar zxvf mysql_all-2020-08-18.tar.gz -C   /usr/local/mysql/  '將備份的文件恢復(fù)'
[root@localhost mysql]# systemctl start mysqld.service 
[root@localhost mysql]# mysql -uroot -p
mysql> show databases;      '數(shù)據(jù)恢復(fù)'
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mydatabase         |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0.00 sec)

2.3 mysqkdump備份數(shù)據(jù)庫(kù)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| apple              |
| mydatabase         |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0.00 sec)

mysql> use mydatabase;
Database changed

mysql> show tables;
+----------------------+
| Tables_in_mydatabase |
+----------------------+
| mytable              |
+----------------------+
1 row in set (0.00 sec)

mysql> select * from mytable;
+----+----------+-------+---------+
| id | name     | score | address |
+----+----------+-------+---------+
|  1 | zhangsan | 80.00 | sh      |
|  2 | lisi     | 77.00 | nj      |
+----+----------+-------+---------+
2 rows in set (0.00 sec)

mysqldump命令對(duì)單個(gè)庫(kù)進(jìn)行完全備份

mysqldump -u用戶名-p [密碼] [選項(xiàng)] [數(shù)據(jù)庫(kù)名] > /備份路徑/備份文件名
[root@localhost ~]# mysqldump -uroot -p123456 mydatabase > /opt/mydatabase.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.

[root@localhost opt]# ls
mydatabase.sql  

mysqldump命令對(duì)多個(gè)庫(kù)進(jìn)行完全備份

mysqldump -u 用戶名 -p [密碼] [選項(xiàng)] --databases 庫(kù)名1 [庫(kù)名2] ...  > /備份路徑/備份文件名
[root@localhost ~]# mysqldump -uroot -p123456 --databases mydatabase apple > /opt/mydatabase-apple.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.

[root@localhost opt]# ls
mydatabase-apple.sql  mydatabase.sql

對(duì)所有庫(kù)進(jìn)行完全備份

mysqldump -u 用戶名 -p [密碼] [選項(xiàng)] --all-databases > /備份路徑/備份文件名
[root@localhost ~]# mysqldump -uroot -p123456 --all-databases > /opt/all.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.

[root@localhost opt]# ls
all.sql  mydatabase-apple.sql  mydatabase.sql

mysqldump可針對(duì)庫(kù)內(nèi)特定的表進(jìn)行備份

mysqldump -u 用戶名 -p [密碼] [選項(xiàng)] 數(shù)據(jù)庫(kù)名 表名 > /備份路徑/備份文件名
[root@localhost opt]# mysqldump -uroot -p123456 mydatabase mytable > /opt/mydatabase.mytable.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.

[root@localhost opt]# ls
all.sql           mydatabase.sql          mydatabase-apple.sql  
mydatabase.mytable.sql

2.4 恢復(fù)數(shù)據(jù)庫(kù)

使用mysqldump導(dǎo)出的腳本,可使用導(dǎo)入的方法

  • source命令,用在mysq|中, 只可以使用絕對(duì)路徑
  • mysq|命令,用在linux下面

使用source恢復(fù)數(shù)據(jù)庫(kù)的步驟

  • 登錄到MySQL數(shù)據(jù)庫(kù)
  • 執(zhí)行source備份sq|腳本的路徑

source恢復(fù)的示例

mysql > source /backup/all-data.sql
mysql> drop table mytable;
Query OK, 0 rows affected (0.00 sec)

mysql> show tables;
Empty set (0.00 sec)

mysql> source /opt/mydatabase.sql

mysql> show tables;
+----------------------+
| Tables_in_mydatabase |
+----------------------+
| mytable              |
+----------------------+
1 row in set (0.00 sec)
mysql> drop database apple;
Query OK, 1 row affected (0.00 sec)

mysql> drop database mydatabase;
Query OK, 1 row affected (0.01 sec)

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

mysql> source /opt/mydatabase-apple.sql

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| apple              |
| mydatabase         |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0.00 sec)

使用mysql命令恢復(fù)數(shù)據(jù)庫(kù)

mysql -u 用戶名 -p 密碼 < 庫(kù)備份腳本的路徑

例:

[root@localhost opt]# mysql -uroot -p123456 < /opt/mydatabase-apple.sql

恢復(fù)表的操作

  • 恢復(fù)表時(shí)同樣可以使用source或者mysql命令
  • source恢復(fù)表的操作與恢復(fù)庫(kù)的操作相同
  • 當(dāng)備份文件中只包含表的備份,而不包括創(chuàng)建庫(kù)的語(yǔ)句時(shí),必須指定庫(kù)名,且目標(biāo)庫(kù)必須存在
mysql -u 用戶名 -p 密碼 < 表備份腳本的路徑
[root@localhost opt]# mysql -uroot -p123456 < /opt/mydatabase.info.sql

在生產(chǎn)環(huán)境中,可以使用shell腳本自動(dòng)實(shí)現(xiàn)定時(shí)備份

三、MySQL增量備份

使用mysqldump進(jìn)行完全備份存在的問(wèn)題

  • 備份數(shù)據(jù)中有重復(fù)數(shù)據(jù)
  • 備份時(shí)間與恢復(fù)時(shí)間過(guò)長(zhǎng)

是自上一次備份后增加/變化的文件或者內(nèi)容

特點(diǎn)

  • 沒(méi)有重復(fù)數(shù)據(jù),備份量不大,時(shí)間短
  • 恢復(fù)需要_上次完全備份及完全備份之后所有的增量備份才能恢復(fù),而且要對(duì)所有增量備份進(jìn)行逐個(gè)反推恢復(fù)

MySQL沒(méi)有提供直接的增量備份方法

可通過(guò)MySQL提供的二進(jìn)制日志間接實(shí)現(xiàn)增量備份

MySQL二進(jìn)制日志對(duì)備份的意義

  • 二進(jìn)制日志保存了所有更新或者可能更新數(shù)據(jù)庫(kù)的操作
  • 二進(jìn)制日志在啟動(dòng)MySQL服務(wù)器后開(kāi)始記錄,并在文件達(dá)到max_binlog_size所設(shè)置的大小或者接收到flush logs命令后重新創(chuàng)建新的日志文件
  • 只需定時(shí)執(zhí)行flush logs方法重新創(chuàng)建新的日志,生成二進(jìn)制文件序列,并及時(shí)把這些日志保存到安全的地方就完成了一個(gè)時(shí)間段的增量備份
[root@localhost opt]# vim /etc/my.cnf
.......
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
log-bin=mysql-bin      '添加以mysql-bin為開(kāi)頭的二進(jìn)制文件'
server-id = 1

[root@localhost data]# ls
apple           ibdata1      ibtmp1      mysql-bin.000001  '二進(jìn)制日志文件'
auto.cnf        ib_logfile0  mydatabase  mysql-bin.index
ib_buffer_pool  ib_logfile1  mysql

3.1 MySQL數(shù)據(jù)庫(kù)增量恢復(fù)

一般恢復(fù):將所有備份的二進(jìn)制日志內(nèi)容全部恢復(fù)

mysqlbinlog [--no-defaults] 增量備份文件 | mysql -u 用戶名 -p

基于位置恢復(fù)

  • 數(shù)據(jù)庫(kù)在某一時(shí)間點(diǎn)可能既有錯(cuò)誤的操作也有正確的操作
  • 可以基于精準(zhǔn)的位置跳過(guò)錯(cuò)誤的操作
恢復(fù)數(shù)據(jù)到指定位置
mysqlbinlog --stop-position='操作id' 二進(jìn)制日志 |mysql -u 用戶名 -p 密碼

從指定的位置開(kāi)始恢復(fù)數(shù)據(jù)
mysqlbinlog --start-position='操作id' 二進(jìn)制日志 |mysql -u 用戶名 -p 密碼

基于時(shí)間點(diǎn)恢復(fù)

跳過(guò)某個(gè)發(fā)生錯(cuò)誤的時(shí)間點(diǎn)實(shí)現(xiàn)數(shù)據(jù)恢復(fù)

從日志開(kāi)頭截止到某個(gè)時(shí)間點(diǎn)的恢復(fù)
mysqlbinlog [--no-defaults] --stop-datetime='年-月-日 小時(shí):分鐘:秒' 二進(jìn)制日志 |mysql -u 用戶名 -p 密碼

從某個(gè)時(shí)間點(diǎn)到日志結(jié)尾的恢復(fù)
mysqlbinlog [--no-defaults] --start-datetime='年-月-日 小時(shí):分鐘:秒' 二進(jìn)制日志 |mysql -u 用戶名 -p 密碼

從某個(gè)時(shí)間點(diǎn)到某個(gè)時(shí)間點(diǎn)的恢復(fù)
mysqlbinlog [--no-defaults] --start-datetime='年-月-日 小時(shí):分鐘:秒' --stop-datetime='年-月-日 小時(shí):分鐘:秒' 二進(jìn)制日志 |mysql -u 用戶名 -p 密碼

3.2 增量備份及恢復(fù)的具體操作

操作前先進(jìn)行完整備份

[root@localhost ~]# mysqldump -uroot -p123456 mydatabase mytable > /opt/mytable.sql

開(kāi)啟日志文件

[root@localhost ~]# vim /etc/my.cnf
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
log-bin=mysql-bin         '開(kāi)啟二進(jìn)制日志文件'

[root@localhost data]# systemctl restart mysqld.service 
[root@localhost data]# ls
apple           ibdata1      ibtmp1      mysql-bin.000001  '二進(jìn)制日志文件'
auto.cnf        ib_logfile0  mydatabase  mysql-bin.index
ib_buffer_pool  ib_logfile1  mysql

進(jìn)行模擬誤操作

mysql> select * from mytable;
+----+----------+-----+
| id | name     | age |
+----+----------+-----+
|  1 | zhangsan | 22  |
|  2 | lisi     | 26  |
|  3 | wangwu   | 30  |
+----+----------+-----+
3 rows in set (0.00 sec)

mysql> insert into mytable values (4,'zhaoliu','20');  '執(zhí)行正確操作'
Query OK, 1 row affected (0.02 sec)

mysql> delete from mytable where id=1;              '進(jìn)行誤操作'
Query OK, 1 row affected (0.00 sec)

mysql> insert into mytable values (5,'qiqi','21');  '執(zhí)行正確操作'
Query OK, 1 row affected (0.01 sec)

mysql> select * from mytable;
+----+---------+-----+
| id | name    | age |
+----+---------+-----+
|  2 | lisi    | 26  |
|  3 | wangwu  | 30  |
|  4 | zhaoliu | 20  |
|  5 | qiqi    | 21  |
+----+---------+-----+
4 rows in set (0.00 sec)

進(jìn)行增量備份

[root@localhost data]# mysqladmin -uroot -p123456 flush-logs
mysqladmin: [Warning] Using a password on the command line interface can be insecure.

解碼二進(jìn)制日志文件

[root@localhost data]# mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000001 > /opt/bk01.txt
[root@localhost data]# vim /opt/bk01.txt
# at 584           '正常操作結(jié)束'
#200822 15:06:12 server id 1  end_log_pos 646 CRC32 0x591ad99d  Table_map: `mydatabase`.`mytable` mapped to number 108
# at 646            '執(zhí)行的誤操作'
#200822 15:06:12 server id 1  end_log_pos 698 CRC32 0x4ddb56be  Delete_rows: table id 108 flags: STMT_END_F
### DELETE FROM `mydatabase`.`mytable`
### WHERE
###   @1=1
###   @2='zhangsan'
###   @3='22'
# at 698           '正常操作開(kāi)始'
#200822 15:06:12 server id 1  end_log_pos 729 CRC32 0x30b1bed7  Xid = 7
COMMIT/*!*/;         
#200822 15:06:30 server id 1  end_log_pos 794 CRC32 0x576f94b9  Anonymous_GTID  last_committed=2        sequence_number=3
SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/;

先刪除錯(cuò)誤的數(shù)據(jù)表,進(jìn)行恢復(fù)

mysql> drop table mytable;
Query OK, 0 rows affected (0.00 sec)

mysql> source /opt/mytable.sql;

mysql> select * from mytable;
+----+----------+-----+
| id | name     | age |
+----+----------+-----+
|  1 | zhangsan | 22  |
|  2 | lisi     | 26  |
|  3 | wangwu   | 30  |
+----+----------+-----+
3 rows in set (0.00 sec)

使用增量備份的斷點(diǎn)恢復(fù)

[root@localhost data]# mysqlbinlog --no-defaults --stop-position='584' /usr/local/mysql/data/mysql-bin.000001 | mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> select * from mytable;
+----+----------+-----+
| id | name     | age |
+----+----------+-----+
|  1 | zhangsan | 22  |
|  2 | lisi     | 26  |
|  3 | wangwu   | 30  |
|  4 | zhaoliu  | 20  |
+----+----------+-----+
4 rows in set (0.00 sec)

[root@localhost data]# mysqlbinlog --no-defaults --start-position='698' /usr/local/mysql/data/mysql-bin.000001 | mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> select * from mytable;
+----+----------+-----+
| id | name     | age |
+----+----------+-----+
|  1 | zhangsan | 22  |
|  2 | lisi     | 26  |
|  3 | wangwu   | 30  |
|  4 | zhaoliu  | 20  |
|  5 | qiqi     | 21  |
+----+----------+-----+
5 rows in set (0.00 sec)

按照增量備份中的時(shí)間點(diǎn)恢復(fù)

mysql> drop table mytable;
Query OK, 0 rows affected (0.00 sec)

mysql> source /opt/mytable.sql;

mysql> select * from mytable;
+----+----------+-----+
| id | name     | age |
+----+----------+-----+
|  1 | zhangsan | 22  |
|  2 | lisi     | 26  |
|  3 | wangwu   | 30  |
+----+----------+-----+
3 rows in set (0.00 sec)
[root@localhost data]# mysqlbinlog --no-defaults --stop-datetime='2020-8-22 15:06:12' /usr/local/mysql/data/mysql-bin.000001 | mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> select * from mytable;
+----+----------+-----+
| id | name     | age |
+----+----------+-----+
|  1 | zhangsan | 22  |
|  2 | lisi     | 26  |
|  3 | wangwu   | 30  |
|  4 | zhaoliu  | 20  |
+----+----------+-----+
4 rows in set (0.00 sec)

[root@localhost data]# mysqlbinlog --no-defaults --start-datetime='2020-8-22 15:06:30' /usr/local/mysql/data/mysql-bin.000001 | mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> select * from mytable;
+----+----------+-----+
| id | name     | age |
+----+----------+-----+
|  1 | zhangsan | 22  |
|  2 | lisi     | 26  |
|  3 | wangwu   | 30  |
|  4 | zhaoliu  | 20  |
|  5 | qiqi     | 21  |
+----+----------+-----+
5 rows in set (0.00 sec)

以上就是MySQL中數(shù)據(jù)庫(kù)備份恢復(fù)的常用方法詳解的詳細(xì)內(nèi)容,更多關(guān)于MySQL數(shù)據(jù)庫(kù)備份恢復(fù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Mac MySQL重置Root密碼的教程

    Mac MySQL重置Root密碼的教程

    安裝MySQL后時(shí)間太長(zhǎng)了會(huì)忘記密碼,在這里總結(jié)一下忘記密碼時(shí)如何重置本地MySQL Root密碼。感興趣的朋友跟隨腳本之家一起學(xué)習(xí)吧
    2018-03-03
  • Mysql8配置SSL安全連接的詳細(xì)指南

    Mysql8配置SSL安全連接的詳細(xì)指南

    Mysql?8?默認(rèn)啟用SSL安全連接,也可以強(qiáng)制必須啟用,這篇文章主要來(lái)和大家介紹一下如何在Mysql8中配置SSL安全連接,有需要的小伙伴可以了解下
    2025-06-06
  • ADODB 入門(mén)

    ADODB 入門(mén)

    ADODB 入門(mén)...
    2006-12-12
  • Mysql根據(jù)某層部門(mén)ID查詢所有下級(jí)多層子部門(mén)的示例

    Mysql根據(jù)某層部門(mén)ID查詢所有下級(jí)多層子部門(mén)的示例

    這篇文章主要介紹了Mysql根據(jù)某層部門(mén)ID查詢所有下級(jí)多層子部門(mén)的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • MySQL 常見(jiàn)存儲(chǔ)引擎的優(yōu)劣

    MySQL 常見(jiàn)存儲(chǔ)引擎的優(yōu)劣

    眾所周知,MySql 提供了很多存儲(chǔ)引擎,這里來(lái)比較一下常見(jiàn)引擎的優(yōu)劣。幫助大家選擇合適的存儲(chǔ)引擎
    2021-06-06
  • MySQL IF 和 IFNULL 用法示例詳解

    MySQL IF 和 IFNULL 用法示例詳解

    MySQL中的條件判斷和空值處理是開(kāi)發(fā)中的常見(jiàn)需求,本文詳細(xì)解析了IF和IFNULL兩個(gè)核心函數(shù),文章通過(guò)多個(gè)實(shí)戰(zhàn)示例展示了它們的用法,感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • MySQL系列教程小白數(shù)據(jù)庫(kù)基礎(chǔ)

    MySQL系列教程小白數(shù)據(jù)庫(kù)基礎(chǔ)

    這篇文章主要為大家介紹了MySQL系列中的數(shù)據(jù)庫(kù)基礎(chǔ),非常適合數(shù)據(jù)庫(kù)小白的入門(mén)基礎(chǔ)篇,詳細(xì)的講解了數(shù)據(jù)庫(kù)的基本概念以及基礎(chǔ)命令及操作示例,有需要的朋友可以借鑒參考下
    2021-10-10
  • MySQL 外鍵約束和表關(guān)系相關(guān)總結(jié)

    MySQL 外鍵約束和表關(guān)系相關(guān)總結(jié)

    一個(gè)項(xiàng)目中如果將所有的數(shù)據(jù)都存放在一張表中是不合理的,比如一個(gè)員工信息,公司只有2個(gè)部門(mén),但是員工有1億人,就意味著員工信息這張表中的部門(mén)字段的值需要重復(fù)存儲(chǔ),極大的浪費(fèi)資源,因此可以定義一個(gè)部門(mén)表和員工信息表進(jìn)行關(guān)聯(lián),而關(guān)聯(lián)的方式就是外鍵。
    2021-06-06
  • Oracle與MySQL的區(qū)別詳解

    Oracle與MySQL的區(qū)別詳解

    MySQL和Oracle Database都是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),本文主要介紹了MySQL和Oracle Database的區(qū)別及優(yōu)缺點(diǎn)是什么,感興趣的小伙伴歡迎閱讀
    2023-04-04
  • linux系統(tǒng)中使用openssl實(shí)現(xiàn)mysql主從復(fù)制

    linux系統(tǒng)中使用openssl實(shí)現(xiàn)mysql主從復(fù)制

    在MySQL的主從復(fù)制中,其傳輸過(guò)程是明文傳輸,并不能保證數(shù)據(jù)的安全性,今天我們就來(lái)討論下linux系統(tǒng)中使用openssl實(shí)現(xiàn)mysql主從復(fù)制,有需要的小伙伴可以參考下
    2016-11-11

最新評(píng)論

腾冲县| 察隅县| 富民县| 三门峡市| 宜春市| 雷山县| 商水县| 柳林县| 尚志市| 远安县| 普格县| 龙海市| 东海县| 安泽县| 阳城县| 嘉义县| 神池县| 博湖县| 饶平县| 麻城市| 乐山市| 长治市| 专栏| 孝义市| 池州市| 屏东县| 济宁市| 通州市| 昭通市| 庐江县| 高邮市| 卫辉市| 平遥县| 扎兰屯市| 合作市| 池州市| 平乐县| 和顺县| 开化县| 益阳市| 林芝县|