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

MYSQL初始化數(shù)據(jù)目錄的實現(xiàn)步驟

 更新時間:2025年02月16日 10:03:17   作者:Run Out Of Brain  
本文主要介紹了MYSQL初始化數(shù)據(jù)目錄的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

安裝MySQL后,必須初始化數(shù)據(jù)目錄,包括mysql系統(tǒng)schema中的表:對于某些MySQL安裝方法,數(shù)據(jù)目錄初始化是自動的

對于其他安裝方法,您必須手動初始化數(shù)據(jù)目錄。其中包括在Unix和類Unix系統(tǒng)上從通用二進制和源碼發(fā)行版安裝,以及在Windows上從zip壓縮包安裝。

本節(jié)介紹如何為那些不能自動初始化數(shù)據(jù)目錄的MySQL安裝方式,進行手動初始化數(shù)據(jù)目錄。

數(shù)據(jù)目錄初始化概述

在此處顯示的示例中,服務器打算在mysql登錄帳戶的用戶ID下運行。如果帳戶不存在,請創(chuàng)建該帳戶,或者替換您計劃用于運行服務器的不同現(xiàn)有登錄帳戶的名稱。

1、將位置更改為MySQL安裝的頂級目錄,這通常是/usr/local/mysql的(根據(jù)需要調(diào)整系統(tǒng)的路徑名):

cd /usr/local/mysql

2、secure_file_priv系統(tǒng)變量將導入和導出操作限制在特定目錄。創(chuàng)建一個目錄,其位置可以指定為該變量的值:

mkdir mysql-files

將目錄用戶和組所有權(quán)授予mysql用戶和mysql組,并適當設置目錄權(quán)限:

chown mysql:mysql mysql-files
chmod 750 mysql-files

3、使用服務器初始化數(shù)據(jù)目錄,包括mysql schema包含確定如何允許用戶連接到服務器的初始MySQL授權(quán)表。例如:

bin/mysqld --initialize --user=mysql

 通常,數(shù)據(jù)目錄初始化只需要在您第一次安裝MySQL后完成。但是,初始化數(shù)據(jù)目錄的命令不會覆蓋任何現(xiàn)有的mysqlschema表,因此在任何情況下運行都是安全的。

4、如果沒有任何選項文件,服務器運行默認設置。要顯式指定MySQL服務器在啟動時應使用的選項,請將它們放在選項文件中,例如/etc/my.cnf/etc/mysql/my.cnf。例如,您可以使用選項文件來設置secure_file_priv系統(tǒng)變量。

5、要確定MySQL在系統(tǒng)啟動時無需人工干預即可啟動。

6、數(shù)據(jù)目錄初始化在mysql schema中創(chuàng)建時區(qū)表,但不填充它們。

數(shù)據(jù)目錄初始化程序

將位置更改為MySQL安裝的頂級目錄,這通常是/usr/local/mysql的(根據(jù)需要調(diào)整系統(tǒng)的路徑名):

cd /usr/local/mysql

要初始化數(shù)據(jù)目錄,調(diào)起mysqld與--initialize或--initialize-insecure選項,這取決于您是否希望服務器生成一個隨機的初始密碼為'root'@'localhost'帳戶,或創(chuàng)建該帳戶時不指定密碼:

1、使用--initialize進行"安全默認"安裝(即,包括生成隨機的初始root密碼)。在這種情況下,密碼被標記為過期,您必須選擇一個新的。

2、使用--initialize-insecure,不會生成root密碼。這是不安全的;您需要在將服務器投入生產(chǎn)使用之前及時為帳戶分配密碼。

有關分配新的'root'@'localhost'密碼的說明,請參閱初始化后root密碼修改。

注:服務器將任何消息(包括任何初始密碼)寫入其標準錯誤輸出。這可能會被重定向到錯誤日志,在Windows上,使用--console選項將消息定向到控制臺。

在Unix和類Unix系統(tǒng)上,數(shù)據(jù)庫目錄和文件必須由mysql登錄帳戶擁有,以便稍后運行時服務器可以讀取和寫入它們。為確保這一點,請從系統(tǒng)root帳戶啟動mysqld并包含--user選項,如下所示:

bin/mysqld --initialize --user=mysql
bin/mysqld --initialize-insecure --user=mysql

或者,在已登錄為mysql用戶中執(zhí)行mysqld,在這種情況下,您可以從命令中省略--user選項。

在Windows上,使用以下命令之一:

bin\mysqld --initialize --console
bin\mysqld --initialize-insecure --console

注:如果缺少所需的系統(tǒng)庫,數(shù)據(jù)目錄初始化可能會失敗。例如,您可能會看到如下錯誤:

bin/mysqld: error while loading shared libraries:
libnuma.so.1: cannot open shared object file:
No such file or directory

如果發(fā)生這種情況,您必須手動或使用系統(tǒng)的包管理器安裝缺失的庫。然后重試數(shù)據(jù)目錄初始化命令。

如果mysqld無法識別安裝目錄或數(shù)據(jù)目錄的正確位置,則可能需要指定其他選項--basedir--datadir。例如(在一行中輸入命令):

bin/mysqld --initialize --user=mysql
  --basedir=/opt/mysql/mysql
  --datadir=/opt/mysql/mysql/data

或者,將相關的選項設置放在選項文件中,并將該文件的名稱傳遞給mysqld。對于Unix和類Unix系統(tǒng),假設選項文件名是/opt/mysql/mysql/etc/my.cnf。將以下行放在文件中:

[mysqld]
basedir=/opt/mysql/mysql
datadir=/opt/mysql/mysql/data

然后調(diào)起mysqld如下(在一行中輸入命令,首先輸入--defaults-file選項):

bin/mysqld --defaults-file=/opt/mysql/mysql/etc/my.cnf
  --initialize --user=mysql

在Windows上,假設C:\my.ini包含以下行:

[mysqld]
basedir=C:\\Program Files\\MySQL\\MySQL Server 8.4
datadir=D:\\MySQLdata

然后調(diào)起mysqld如下(同樣,您應該在一行中輸入命令,首先輸入--defaults-file選項):

bin\mysqld --defaults-file=C:\my.ini
   --initialize --console

重要:始化數(shù)據(jù)目錄時,除了用于設置目錄位置的選項(如--basedir或--datadir)和--user選項(如果需要)之外,不應指定任何其他選項。MySQL服務器在正常使用期間使用的選項可以在初始化后重新啟動時設置。有關詳細信息,請參閱--initialize選項的描述。

數(shù)據(jù)目錄初始化期間的服務器操作

注:服務器執(zhí)行的數(shù)據(jù)目錄初始化序列不能替代mysql_secure_installation執(zhí)行的操作。

當使用--initialize或--initialize-insecure選項調(diào)用時,mysqld在數(shù)據(jù)目錄初始化序列期間執(zhí)行以下操作:

1、服務器檢查數(shù)據(jù)目錄是否存在,如下所示:

  • 如果不存在數(shù)據(jù)目錄,則服務器會創(chuàng)建它。

  • 如果數(shù)據(jù)目錄存在但不為空(即包含文件或子目錄),服務器在產(chǎn)生錯誤消息后退出:

    [ERROR] --initialize specified but the data directory exists. Aborting.

    在這種情況下,請刪除或重命名數(shù)據(jù)目錄,然后重試。如果每個條目的名稱都以句點(.)開頭,則允許存量數(shù)據(jù)目錄為非空。

2、在數(shù)據(jù)目錄中,服務器創(chuàng)建mysql系統(tǒng)schema及其表,包括數(shù)據(jù)字典表、授權(quán)表、時區(qū)表和服務器端幫助表。

3、服務器初始化管理InnoDB表所需的系統(tǒng)表空間和相關數(shù)據(jù)結(jié)構(gòu)。注意:在mysqld設置InnoDB 系統(tǒng)表空間后,對表空間特征的某些更改需要設置一個全新的實例。合格的更改包括系統(tǒng)表空間中第一個文件的文件名和撤消日志的數(shù)量。如果您不想使用默認值,請確保innodb_data_file_path和innodb_log_file_size配置參數(shù)的設置在MySQL配置文件 中到位,然后再運行mysqld。還要確保根據(jù)需要指定影響InnoDB文件創(chuàng)建和位置的其他參數(shù),例如innodb_data_home_dirinnodb_log_group_home_dir,如果這些選項在配置文件中,但該文件不在MySQL默認讀取的位置,請在運行mysqld時使用--defaults-extra-file選項指定文件位置。

4、服務器創(chuàng)建一個'root'@'localhost'超級用戶帳戶和其他保留帳戶(參見第8.2.9節(jié),“保留帳戶”)。一些保留帳戶被鎖定,客戶端無法使用,但'root'@'localhost'用于管理用途,您應該為其分配密碼。服務器關于'root'@'localhost'帳戶密碼的操作取決于您如何調(diào)起它:

使用--initialize但不--initialize-insecure,服務器生成一個隨機密碼,將其標記為過期,并寫入一個顯示密碼的消息:

[Warning] A temporary password is generated for root@localhost:
iTag*AfrH5ej

使用--initialize-insecure,(無論是否--initialize,因為--initialize-insecure暗示--initialize),服務器不會生成密碼或標記密碼已過期,并寫入警告消息:

[Warning] root@localhost is created with an empty password ! Please
consider switching off the --initialize-insecure option.

有關分配新的'root'@'localhost'密碼的說明,請參閱下面的說明

5、服務器填充用于HELP的服務器端help表。服務器不填充時區(qū)表。要手動執(zhí)行此操作

6、如果使用init_file系統(tǒng)變量來命名包含SQL語句的文件,則服務器將執(zhí)行該文件中的語句。當服務器在引導模式下運行時,某些功能不可用,這些功能限制了文件中允許的語句。這些語句包括與帳戶管理(如CREATE USER或GRANT)、復制和全局事務標識符相關的語句。

7、服務器退出。

初始化后root密碼分配

通過使用--initialize或--initialize-insecure啟動服務器初始化數(shù)據(jù)目錄后,正常啟動服務器(即不使用這些選項中的任何一個)并為'root'@'localhost'帳戶分配新密碼:

1、啟動服務器

2、連接到服務器

如果使用--initialize但不--initialize-insecure初始化數(shù)據(jù)目錄,則以root身份連接到服務器:

mysql -u root -p

然后,在密碼提示處,輸入服務器在初始化序列中生成的隨機密碼:

Enter password: (enter the random root password here)

如果您不知道此密碼,請查看服務器錯誤日志。

如果您使用--initialize-insecure初始化數(shù)據(jù)目錄,請以root連接到服務器,無需密碼:

mysql -u root --skip-password

 3、連接后,使用ALTER USER語句分配新的root密碼:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root-password';

嘗試連接到主機通常127.0.0.1解析為localhost帳戶。但是,如果服務器在啟用skip_name_resolve的情況下運行,則會失敗。如果您計劃這樣做,請確保存在可以接受連接的帳戶。例如,為了能夠使用--host=127.0.0.1或--host=::1以root連接,請創(chuàng)建以下帳戶:

CREATE USER 'root'@'127.0.0.1' IDENTIFIED BY 'root-password';
CREATE USER 'root'@'::1' IDENTIFIED BY 'root-password';

可以使用init_file系統(tǒng)變量將這些語句放入要執(zhí)行的文件中。

到此這篇關于MYSQL初始化數(shù)據(jù)目錄的實現(xiàn)步驟的文章就介紹到這了,更多相關MYSQL初始化數(shù)據(jù)目錄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • mysql修改自增主鍵數(shù)值無效的問題及解決

    mysql修改自增主鍵數(shù)值無效的問題及解決

    這篇文章主要介紹了mysql修改自增主鍵數(shù)值無效的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • MySQL事務(transaction)看這篇就足夠了

    MySQL事務(transaction)看這篇就足夠了

    M事務的實現(xiàn)是基于數(shù)據(jù)庫的存儲引擎,不同的存儲引擎對事務的支持程度不一樣,下面這篇文章主要給大家介紹了關于MySQL事務(transaction)的相關資料,需要的朋友可以參考下
    2022-11-11
  • Mysql實戰(zhàn)練習之簡單圖書管理系統(tǒng)

    Mysql實戰(zhàn)練習之簡單圖書管理系統(tǒng)

    由于課設需要做這個,于是就抽了點閑余時間,寫了下,用Mysql與Java,基本全部都涉及到,包括借書/還書,以及書籍信息的更新,查看所有的書籍。需要的朋友可以參考下
    2021-09-09
  • mysql多表聯(lián)合查詢操作實例分析

    mysql多表聯(lián)合查詢操作實例分析

    這篇文章主要介紹了mysql多表聯(lián)合查詢操作,結(jié)合實例形式分析了mysql多表聯(lián)合查詢的語法、功能、相關操作技巧與注意事項,需要的朋友可以參考下
    2019-04-04
  • MAC下mysql安裝配置方法圖文教程

    MAC下mysql安裝配置方法圖文教程

    這篇文章主要為大家分享了MAC下mysql安裝配置方法圖文教程,感興趣的朋友可以參考一下
    2016-06-06
  • mysql備份腳本 mysqldump使用方法詳解

    mysql備份腳本 mysqldump使用方法詳解

    這篇文章主要為大家詳細介紹了mysql備份腳本(mysqldump),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 一篇文章帶你輕松了解MySQL之事務的簡介

    一篇文章帶你輕松了解MySQL之事務的簡介

    事務可以由一條非常簡單的SQL語句組成,也可以由一組復雜的SQL語句組成,事務的目的是將數(shù)據(jù)庫從一種一致性狀態(tài)轉(zhuǎn)換為另一種一致性狀態(tài),下面這篇文章主要給大家介紹了關于MySQL事務簡介的相關資料,需要的朋友可以參考下
    2023-06-06
  • MySQl 索引的使用

    MySQl 索引的使用

    本文介紹了如何驗證索引效率,包括在未建立索引和建立索引前后的耗時對比,詳細解釋了最左前綴法則、范圍查詢、索引列運算、字符串不加引號、模糊匹配、or連接的條件和數(shù)據(jù)分布對索引使用的影響,感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • MySQL索引選擇與失效場景全解析

    MySQL索引選擇與失效場景全解析

    在MySQL數(shù)據(jù)庫中,索引是一種重要的優(yōu)化手段,它能夠顯著提升查詢速度,尤其是在大數(shù)據(jù)量的表中,然而,如果不正確地使用,索引可能會失去作用,導致查詢性能下降,所以本文給大家介紹了MySQL索引選擇與失效場景全解析,需要的朋友可以參考下
    2025-06-06
  • 淺析mysql.data.dll驅(qū)動各版本介紹

    淺析mysql.data.dll驅(qū)動各版本介紹

    本較詳細的給大家介紹了mysql.data.dll驅(qū)動各版本的相關知識,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
    2018-07-07

最新評論

青海省| 赫章县| 瓦房店市| 清涧县| 柏乡县| 延寿县| 达日县| 泾川县| 景东| 宾阳县| 深州市| 应用必备| 阜南县| 太仓市| 呼伦贝尔市| 同仁县| 临夏县| 天镇县| 永靖县| 临颍县| 东乡县| 霸州市| 新兴县| 自治县| 贞丰县| 延吉市| 阳原县| 梁平县| 白城市| 井研县| 洮南市| 石屏县| 五寨县| 辰溪县| 龙海市| 中山市| 高唐县| 承德市| 玉环县| 沾化县| 龙川县|