修改mysql數據庫存儲路徑,mysql數據存儲路徑怎麼修改

本文目錄一覽:

linux環境下通過軟鏈接變更mysql數據存儲路徑

想要改變mysql數據存儲路徑的想法最初是在生產服務器上mysql的數據放到了系統盤上,導致系統盤滿額,沒有足夠的內存交換空間而死機。

將mysql數據存儲到其他目錄下有兩種方法,方法一修改my.cnf配置文件,不過經過筆者通過網上的配置資料嘗試總是不成功,環境是在centos7下操作的。後來想到一個簡單的方法,通過linux的軟鏈接將實際數據放到另外的目錄裏面就可以了。

操作系統是centos7

mysql是通過二進制包裏面的rpm方式安裝的。相當於全自動了。

先關閉mysql

默認情況下,rpm安裝好的mysql會將數據放置在 /var/lib/mysql 目錄當中,我們像將數據遷移到/mnt/data目錄當中在terminal當中輸入:

mv命令會直接將 /var/lib/mysql 文件夾直接剪切到 /mnt/data 目錄當中。

這時我們需要回到/var/lib目錄當中,

在這個目錄當中建立軟鏈接。

軟鏈接相當於windows裏面創建目錄快捷方式是一樣的,這個時候你應該可以看到mysql文件夾回到了 /var/lib 目錄當中,要進去查看一下mysql的路徑是否和my.cnf一致。

這時候我們再啟動mysql

以上我們就將數據遷移到其他目錄下,並且還沒有修改和變更my.cnf文件。

mysql如何修改數據庫目錄

mysql中修改數據庫目錄方法:

操作步驟:

1.檢查mysql數據庫存放目錄

mysql

-u

root

-prootadmin

#進入數據庫

show

variables

like

‘%dir%’;

#查看sql存儲路徑

(查看datadir

那一行所指的路徑)

quit;

2.停止mysql服務

service

mysqld

stop

3.創建新的數據庫存放目錄

mkdir

/data/mysql

4.移動/複製之前存放數據庫目錄文件,到新的數據庫存放目錄位置

cp

-R

/usr/local/mysql/data/*

/data/mysql/

#或mv

/usr/local/mysql/data/*

/data/mysql

5.修改mysql數據庫目錄權限以及配置文件

chown

mysql:mysql

-R

/data/mysql/

vim

/etc/my.cnf

datadir=/data/mysql

(制定為新的數據存放目錄)

vim

/etc/init.d/mysqld

datadir=/data/mysql

6.啟動數據庫服務

service

mysqld

start

說明:根據以上的簡單6步操作,已經成功的數據庫目錄更換路徑了。

如何更改mysql數據文件位置

一.首先把mysql的服務先停掉。

二.更改MySQL配置文件My.ini中的數據庫存儲主路徑

打開MySQL默認的安裝文件夾C:\Program Files\MySQL\MySQL Server 5.1中的my.ini文件,點擊記事本頂部的「編輯」,「查找」,在查找內容中輸入datadir後並點擊「查找下一個」轉到「Path to the database root數據庫存儲主路徑」參數設置,找到datadir=”C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data/”即是默認的數據庫存儲主路徑設置,現將它改到C:\mysql\data(你希望的)文件夾,正確的設置是datadir=”C:/mysql/data/”。

更改完成後點擊菜單欄的「文件」,再點擊「保存」。

三.將老的數據庫存儲主路徑中的數據庫文件和文件夾複製到新的存儲主路徑

將C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data/文件夾中的所有文件和文件夾拷貝到你新建的文件夾目錄下。

四.重啟MySQL服務

五.驗證更改數據庫存儲主路徑的操作是否成功

ubuntu系統修改mysql默認數據存儲路徑

將datadir = /var/lib/mysql 改成 datadir = /data/mysql/mysql

如果出現如下權限限制的話,先輸入:set noreadonly 再輸入:wq 保存後退出

/var/lib/mysql/ r,

/var/lib/mysql/** rwk,

改成

/data/mysql/mysql/ r,

/data/mysql/mysql/** rwk,

/var/lib/mysql{,d}/mysql{,d}.sock rw,

改成

/data/mysql/mysql{,d}/mysql{,d}.sock rw,

驗證修改成功。

mysql數據庫存儲路徑怎麼更改?

MySql安裝過程中,沒有修改掉數據存儲位置的話,可能會是數據存儲到自己並不希望的位置,故需要修改

先利用命令行登錄數據庫

mysql -u root -p

查看數據庫數據存儲位置

show variables like ‘%datadir%’

去該目錄下找到文件夾中的所有文件(該目錄一般是隱藏的),將其中所有文件拷貝到你希望數據文件存儲的位置,

我是想拷貝到D:/MySQl/data目錄下的

打開安裝目錄下的my.ini文件,將datadir=”C:/ProgramData/MySQL/MySQL Server 5.5/data/”,這行修改為datadir=”D\MySQL\data”(這裡用又斜線,否則有可能報錯)。

退出所有對mysql.exe的調用,任務管理器看一下服務MySQL有沒有停止,如果沒有,在cmd中命令net stop mysql停止服務。然後在net start mysql重新啟動服務

查詢數據庫位置,查看是否成功

如何修改mysql數據庫文件的路徑

MySQL默認的數據文件存儲目錄為/var/lib/mysql。假如要把MySQL目錄移到/home/data下需要進行下面幾步:

1、home目錄下建立data目錄

cd /home

mkdir data

2、把MySQL服務進程停掉

mysqladmin -u root -p shutdown

3、把/var/lib/mysql整個目錄移到/home/data

mv /var/lib/mysql /home/data/

這樣就把MySQL的數據文件移動到了/home/data/mysql下。

4、找到my.cnf配置文件

如果/etc/目錄下沒有my.cnf配置文件,請到/usr/share/mysql/下找到*.cnf文件,拷貝其中一個到/etc/並改名為my.cnf)中。命令如下:

[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

5、編輯MySQL的配置文件/etc/my.cnf

為保證MySQL能夠正常工作,需要指明mysql.sock文件的產生位置。修改socket=/var/lib/mysql/mysql.sock一行中等號右邊的值為:/home/mysql/mysql.sock。操作如下:

vi  my.cnf  (用vi工具編輯my.cnf文件,找到下列數據修改之)

# The MySQL server

[mysqld]

port = 3306

#socket  = /var/lib/mysql/mysql.sock(原內容,為了更穩妥用「#」注釋此行)

socket  = /home/data/mysql/mysql.sock (加上此行)

6、修改MySQL啟動腳本/etc/init.d/mysql

最後,需要修改MySQL啟動腳本/etc/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等號右邊的路徑改成你現在的實際存放路徑:home/data/mysql。

[root@test1 etc]# vi /etc/init.d/mysql

#datadir=/var/lib/mysql(注釋此行)

datadir=/home/data/mysql (加上此行)

7、重新啟動MySQL服務

/etc/init.d/mysql start

或用reboot命令重啟Linux

如果工作正常移動就成功了,否則對照前面的7步再檢查一下。

還要注意目錄的屬主和權限。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/192912.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-01 10:30
下一篇 2024-12-01 10:30

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝數據庫方案

    本文將介紹在openeuler操作系統中安裝數據庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟件源 sudo…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • 數據庫第三範式會有刪除插入異常

    如果沒有正確設計數據庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係數據庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • Python文件路徑賦值

    Python中文件操作是非常基本的操作,而文件路徑是文件操作的前提。本文將從多個方面闡述如何在Python中賦值文件路徑。 一、絕對路徑和相對路徑 在Python中,路徑可以分為絕…

    編程 2025-04-28
  • leveldb和unqlite:兩個高性能的數據庫存儲引擎

    本文將介紹兩款高性能的數據庫存儲引擎:leveldb和unqlite,並從多個方面對它們進行詳細的闡述。 一、leveldb:輕量級的鍵值存儲引擎 1、leveldb概述: lev…

    編程 2025-04-28
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28

發表回復

登錄後才能評論