MYSQL 如果把数据文件保存到其他磁盘里
生活随笔
收集整理的這篇文章主要介紹了
MYSQL 如果把数据文件保存到其他磁盘里
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天在CSDN上有人問起分開存儲數據文件的問題。
現在寫下來。
為了突破磁盤搜索的瓶頸。我們要把MYSQL的數據和索引保存到其他不同的磁盤中。目前還只是支持MyISAM引擎。在MYSQL中,官這個叫象征性鏈接。
1、在WINDOWS下的象征性鏈接。
數據庫目錄:E:/LAMP/mysql5/data
數據庫名字:symlink
目的數據庫目錄:D:/MYSQLDATA
如果原來的數據庫目錄下已經有symlink的話,停掉MYSQL服務。然后移動相應目錄到目的數據庫目錄。
建立一個文本文件用來保存目的數據庫路徑:symlink.sym內容為:D:/MYSQLDATA/symlink
然后啟動MYSQL服務。
現在進行測試:
創建數據庫之前:
D:/MYSQLDATA>dir
?驅動器 D 中的卷是 新加卷
?卷的序列號是 58DF-80B4
?D:/MYSQLDATA 的目錄
2008-01-15? 15:24??? <DIR>????????? .
2008-01-15? 15:24??? <DIR>????????? ..
?????????????? 0 個文件????????????? 0 字節
?????????????? 2 個目錄 38,197,895,168 可用字節
創建數據庫:
create database symlink;
use symlink;
create table t1(id int not null auto_increment primary key);
(1 row(s)affected)
(0 ms taken)
(0 row(s)affected)
(0 ms taken)
(0 row(s)affected)
(0 ms taken)
現在看這個目錄:
D:/MYSQLDATA>dir
?驅動器 D 中的卷是 新加卷
?卷的序列號是 58DF-80B4
?D:/MYSQLDATA 的目錄
2008-01-15? 15:25??? <DIR>????????? .
2008-01-15? 15:25??? <DIR>????????? ..
2008-01-15? 15:25??? <DIR>????????? symlink
?????????????? 0 個文件????????????? 0 字節
?????????????? 3 個目錄 38,197,882,880 可用字節
D:/MYSQLDATA>cd symlink
D:/MYSQLDATA/symlink>dir
?驅動器 D 中的卷是 新加卷
?卷的序列號是 58DF-80B4
?D:/MYSQLDATA/symlink 的目錄
2008-01-15? 15:25??? <DIR>????????? .
2008-01-15? 15:25??? <DIR>????????? ..
2008-01-15? 15:25??????????????? 61 db.opt
2008-01-15? 15:25???????????? 8,556 t1.frm
?????????????? 2 個文件????????? 8,617 字節
?????????????? 2 個目錄 38,197,882,880 可用字節
2、LINUX下好像更簡單。
[david yeung ~]# mkdir /home/david_yeung/mysqldata
[david yeung ~]# ln -s /usr/local/mysql/data/symlink /home/david_yeung/mysqldata/symlink
[david yeung ~]# cd /home/david_yeung/mysqldata/
[david yeung mysqldata]# cd symlink/
[david yeung symlink]# ls
db.opt? t1.frm? t1.MYD? t1.MYI
[david yeung symlink]# ls -l
婊璁?36
-rw-rw---- 1 mysql mysql?? 61 01-15 15:36 db.opt
-rw-rw---- 1 mysql mysql 8556 01-15 15:36 t1.frm
-rw-rw---- 1 mysql mysql??? 0 01-15 15:36 t1.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:36 t1.MYI
再看一下表:
create table t_cs(id int not null,sym char(20) not null);
(0 row(s)affected)
(0 ms taken)
[david yeung symlink]# ls -l
婊璁?64
-rw-rw---- 1 mysql mysql?? 61 01-15 15:36 db.opt
-rw-rw---- 1 mysql mysql 8556 01-15 15:36 t1.frm
-rw-rw---- 1 mysql mysql??? 0 01-15 15:36 t1.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:36 t1.MYI
-rw-rw---- 1 mysql mysql 8584 01-15 15:41 t_cs.frm
-rw-rw---- 1 mysql mysql??? 0 01-15 15:41 t_cs.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:41 t_cs.MYI
其他問題我會在后續更新的。
現在寫下來。
為了突破磁盤搜索的瓶頸。我們要把MYSQL的數據和索引保存到其他不同的磁盤中。目前還只是支持MyISAM引擎。在MYSQL中,官這個叫象征性鏈接。
1、在WINDOWS下的象征性鏈接。
數據庫目錄:E:/LAMP/mysql5/data
數據庫名字:symlink
目的數據庫目錄:D:/MYSQLDATA
如果原來的數據庫目錄下已經有symlink的話,停掉MYSQL服務。然后移動相應目錄到目的數據庫目錄。
建立一個文本文件用來保存目的數據庫路徑:symlink.sym內容為:D:/MYSQLDATA/symlink
然后啟動MYSQL服務。
現在進行測試:
創建數據庫之前:
D:/MYSQLDATA>dir
?驅動器 D 中的卷是 新加卷
?卷的序列號是 58DF-80B4
?D:/MYSQLDATA 的目錄
2008-01-15? 15:24??? <DIR>????????? .
2008-01-15? 15:24??? <DIR>????????? ..
?????????????? 0 個文件????????????? 0 字節
?????????????? 2 個目錄 38,197,895,168 可用字節
創建數據庫:
create database symlink;
use symlink;
create table t1(id int not null auto_increment primary key);
(1 row(s)affected)
(0 ms taken)
(0 row(s)affected)
(0 ms taken)
(0 row(s)affected)
(0 ms taken)
現在看這個目錄:
D:/MYSQLDATA>dir
?驅動器 D 中的卷是 新加卷
?卷的序列號是 58DF-80B4
?D:/MYSQLDATA 的目錄
2008-01-15? 15:25??? <DIR>????????? .
2008-01-15? 15:25??? <DIR>????????? ..
2008-01-15? 15:25??? <DIR>????????? symlink
?????????????? 0 個文件????????????? 0 字節
?????????????? 3 個目錄 38,197,882,880 可用字節
D:/MYSQLDATA>cd symlink
D:/MYSQLDATA/symlink>dir
?驅動器 D 中的卷是 新加卷
?卷的序列號是 58DF-80B4
?D:/MYSQLDATA/symlink 的目錄
2008-01-15? 15:25??? <DIR>????????? .
2008-01-15? 15:25??? <DIR>????????? ..
2008-01-15? 15:25??????????????? 61 db.opt
2008-01-15? 15:25???????????? 8,556 t1.frm
?????????????? 2 個文件????????? 8,617 字節
?????????????? 2 個目錄 38,197,882,880 可用字節
2、LINUX下好像更簡單。
[david yeung ~]# mkdir /home/david_yeung/mysqldata
[david yeung ~]# ln -s /usr/local/mysql/data/symlink /home/david_yeung/mysqldata/symlink
[david yeung ~]# cd /home/david_yeung/mysqldata/
[david yeung mysqldata]# cd symlink/
[david yeung symlink]# ls
db.opt? t1.frm? t1.MYD? t1.MYI
[david yeung symlink]# ls -l
婊璁?36
-rw-rw---- 1 mysql mysql?? 61 01-15 15:36 db.opt
-rw-rw---- 1 mysql mysql 8556 01-15 15:36 t1.frm
-rw-rw---- 1 mysql mysql??? 0 01-15 15:36 t1.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:36 t1.MYI
再看一下表:
create table t_cs(id int not null,sym char(20) not null);
(0 row(s)affected)
(0 ms taken)
[david yeung symlink]# ls -l
婊璁?64
-rw-rw---- 1 mysql mysql?? 61 01-15 15:36 db.opt
-rw-rw---- 1 mysql mysql 8556 01-15 15:36 t1.frm
-rw-rw---- 1 mysql mysql??? 0 01-15 15:36 t1.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:36 t1.MYI
-rw-rw---- 1 mysql mysql 8584 01-15 15:41 t_cs.frm
-rw-rw---- 1 mysql mysql??? 0 01-15 15:41 t_cs.MYD
-rw-rw---- 1 mysql mysql 1024 01-15 15:41 t_cs.MYI
其他問題我會在后續更新的。
轉載于:https://www.cnblogs.com/secbook/archive/2008/05/08/2655300.html
總結
以上是生活随笔為你收集整理的MYSQL 如果把数据文件保存到其他磁盘里的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LDAP 查询基本知识
- 下一篇: EntLib.com Forum/YAF