首頁 資料庫 mysql教程 烂泥:mysql帮助命令使用说明_MySQL

烂泥:mysql帮助命令使用说明_MySQL

Jun 01, 2016 pm 01:01 PM
使用說明 命令

在安装、管理和使用mysql过程中,你是不是需要记忆很多的mysql命令。而且对于新手来说,很不多的命令不知道该如何应用,对于老手来说很多命令时间长了忘记具体的用法。

其实mysql的帮助信息,已经给我们提供很全面的使用方法。

下面我就大致介绍下,如何使用mysql的帮助信息。

说明:在此我只是为学习mysql提供一个思路,本篇文章不会过多讲解每一个命令的使用方法。

一、mysql数据库初始化

在安装mysql进行初始化时,我们要使用mysql_install_db脚本进行初始化mysql数据库,此时我们就可通过帮助命令实现。如下:

/usr/local/mysql/scripts/mysql_install_db --help

clip_image001

图中的1、2、3表示初始化时mysql安装的bin路径、mysql数据目录,以及运行mysql所使用的用户。

现在我们进行初始化数据库,如下:

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql

clip_image002

通过上图,我们也可以看到mysql数据库已经初始化成功。同时系统也给出如何启动mysql,图中5标记出来。图中6标记出来的是如何修改root用户的密码。

二、 mysql数据库管理

2.1 启动mysql使用mysqld_safe

mysql数据库安装完毕后,我们就要启动mysql。启动mysql时,我们可以通过mysql提供的脚本,也可以通过mysqld_safe命令来启动。

其实mysql的脚本也是通过该命令来实现的,如下:

cat /etc/init.d/mysqld

clip_image003

有关mysqld_safe命令的使用,我们也可以查看帮助文档。如下:

/usr/local/mysql/bin/mysqld_safe --help

clip_image004

我们需要关注defaults-file这个参数,这个参数加载的就是mysql的配置文件my.cnf。mysql的多实例部署就是根据加载不同的my.cnf文件来达到目的的。

现在我们来启动mysql,如下:

/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &

clip_image005

注意有一个参数在帮助文档中我们是查不到的,就是跳过密码验证启动mysql,这个参数为skip-grant-table。使用该参数启动mysql,如下:

/usr/local/mysql/bin/mysqld_safe --skip-grant-table &

clip_image006

2.2 修改root用户密码使用mysqladmin

刚刚新安装的mysql数据库,root用户密码是空的。我们可以通过mysqladmin来查看如何修改root用户密码,如下:

/usr/local/mysql/bin/mysqladmin --help

clip_image007

修改root密码,如下:

/usr/local/mysql/bin/mysqladmin -uroot password 123456

clip_image008

第一次修改root密码,因为此时root密码为空,我们可以这样操作。如果root已经有密码了,我们就要使用以下命令进行修改,如下:

/usr/local/mysql/bin/mysqladmin -uroot -p123456 password 456789

使用新密码登录mysql,如下:

/usr/local/mysql/bin/mysql -uroot –p456789

clip_image009

其中还要注意-S参数,这个在mysql多实例时会使用到,详见《烂泥:mysql5.5多实例部署》。

2.3 备份mysql使用mysqldump

在备份mysql数据库时,我们一般使用mysqldunmp命令,有关mysqldump命令的使用方法查看帮助文档。如下:

/usr/local/mysql/bin/mysqldump --help

clip_image010

clip_image011

由于mysqldump的参数比较多,所以我们不一一介绍。但是有几个参数需要重点介绍下。

-A表示备份整个数据库

-F表示在执行导出之前将会刷新MySQL服务器的binlog

-e表示使用全新多行INSERT语法。(给出更紧缩并且更快的插入语句)

--single-transaction 这个是当mysql是innodb引擎时,使用mysqldump备份建议要加上。

-S这个是mysql多实例使用的,详见《烂泥:mysql5.5多实例部署》。

2.4 登录mysql使用mysql

登录或者连接mysql我们可以使用mysql命令,有关mysql命令的使用,查看帮助文档。如下:

/usr/local/mysql/bin/mysql --help

clip_image012

在此我主要介绍下-e和-S这个参数。-e参数在mysql进行主从配置查看master库的binlog文件名及pos位置节点时使用。-S参数mysql多实例使用,详见《烂泥:mysql5.5多实例部署》。如下:

mysql -uroot -p123456 -S /data/3307/mysql.sock -e "show master status"

clip_image013

注意以上命令都可以通过man进行查询其使用方法。比如mysql命令:

man mysql

clip_image014

三、mysql数据库使用

3.1 查看mysql数据库版本

登录mysql数据库后,我们可以看到系统的提示命令,如下:

/usr/local/mysql/bin/mysql -uroot -p456789

clip_image015

通过上述截图,我们可以看到目前mysql的版本是5.5.39。同时我们也注意到系统的提示:输入help可以查看帮助信息,\c可以清空输入。

3.2 查看help命令

查看help命令相关信息,如下:

help

clip_image016

通过上图我们可以看到help命令很简单的,在这我就不详细的介绍了。只介绍system命令,该参数可以在mysql命令中直接执行系统的相关命令。如下:

system ifconfig eth0

clip_image017

3.3 查看mysql帮助索引

如果你一个mysql的使用命令都不知道,也没有关系的。mysql给我提供了一个帮助索引。现在我们随便输入一个命令,看看mysql的提示如:

help eth0;

clip_image018

通过上图,我们可以看到。当我们输入一个不存在的命令时,系统会提示的。注意图中标记出来的***部分“help contents”。

我们通过help contents就可以查看到所有的mysql命令,这个就是mysql帮助索引。如下:

help contents;

clip_image019

注意图中标记出来的都是各个mysql总命令的总目录。比如Account Management是负责管理mysql用户有关的目录、Administration是mysql管理员管理mysql有关的目录。

我们所有的mysql命令,都是可以在这个索引下找的。

3.4 查看mysql如何创建用户

我们要创建一个新的数据库用户,但是我们又不知道使用什么命令进行创建,那我们就可以使用help contents查看所有的mysql命令目录,根据目录提示的信息我们猜想该命令应该在Account Management这个目录下。那我们就可以先查看该命令的帮助,如下:

help Account Management;

clip_image020

通过上图,我们可以看到创建用户的命令确实在该目录下,为create user命令。

有关create user命令的具体使用方法,我们可以在进一步通过help命令进行查看。如下:

help create user;

clip_image021

clip_image022

通过上图,我们可以很明显看到create user的具体使用方法,并且帮助信息中也给出相应的例子。

这样我们知道,如何使用create user命令创建数据用户了。

同理我们也可以查看如何删除一个用户,使用help drop user命令,如下:

help drop user;

clip_image023

3.5如何给用户授权

我们在创建完毕数据库用户后,就要给该用户授权。那么如何授权,该使用什么命令呢?

其实我们也可以在help Account Management命令中查看到,如下:

clip_image024

通过上图我们可以看到grant就是授权命令。

我们再来查看grant命令的使用方法,如下:

help grant;

clip_image025

clip_image026

上图就是grant的使用方法以及实例。同时系统也给出了如何查看用户的权限使用show grants和如何删除用户的权限使用revoke。

同理我们也可以删除一个用户权限,使用help revoke命令进行查看,如下:

help revoke;

clip_image027

在这有一点需要说明下,我们在给用户进行授权时,有时候不知道数据库对用户的权限都是什么,其实我们也是可以通过系统给出的数据库进行查询到的。该数据库为information_schema,如下:

use information_schema;

desc user_privileges;

select privilege_type from user_privileges;

clip_image028

表user_privileges的privilege_type字段存储的就是mysql数据库用户的所有权限。

除此之外,我们也可以通过Administration下的privileges查看所有权限,这个方法是最简单的。如下:

show privileges;

clip_image029

3.6 修改用户密码

修改数据库用户的密码,我们也可以在help Account Management下进行查看。如下:

help Account Management;

clip_image030

通过上图,我们可以知道修改用户密码的命令是set password。

下面我们来查看set password的具体用法,如下:

help set password;

clip_image031

clip_image032

通过上图,我们可以知道set password的使用方法以及使用实例。

3.7如何新建mysql数据库

如何新建一个mysql数据库,我们可以通过help contents查看应该是在data definition。如下:

help contents;

help data definition;

clip_image033

clip_image034

通过上图,我们可以看到创建数据库的命令是create database。现在我们来具体查看下有关create database命令的使用方法,如下:

help create database;

clip_image035

上图就是有关create database命令的详细使用方法。

同时还要注意我们在查看help data definition命令时,标记出来的部分,如下:

clip_image036

我们可以看到这里面还有创建表、创建表空间,删除数据库、删除表、删除表空间等命令,这个些命令我们就不一一介绍了。我们只需按照create database命令进行查询其使用方法即可。

3.8如何更新数据库的一个记录

现在我们要更新数据库中一张表的某一个字段的记录,我们知道可以使用update命令。但是update命令的具体用法,我们忘记了。

嘿嘿,没事,我们也可以通过help信息查看update命令的使用方法。

通过查看相关的信息,我们知道update命令在data manipulation目录下面。如下:

help data manipulation;

clip_image037

clip_image038

现在我们来查看update的使用方法,如下:

help update;

clip_image039

通过上图,我们就可以知道update命令的使用方法。

同时需要注意的是,我们在查看data manipulation时,也可以查看有关表的其他操作,查询命令select、删除命令delete、插入命令insert。

如下:

help data manipulation;

clip_image040

有关这些命令的使用方法,在此就不一一介绍了。我们只需按照update命令进行查询其使用方法即可。

3.9如何刷新mysql日志

现在我们来查看如何在命令行下,刷新mysql日志。这个我们可以在help contents下的Administration进行查看。如下:

help Administration;

clip_image041

通过上图,我们可以知道刷新mysql日志的命令为flush。现在查看该命令的具体使用方法。如下:

help flush;

clip_image042

通过上图,我们可以看到刷新日志使用flush logs命令即可。如下:

show master status\G;

flush logs;

clip_image043

同时该帮助信息中,还给出了如何重置日志,使用reset命令。如下:

help reset;

clip_image044

其实在help Administration中,我们也能看到reset命令。如下:

clip_image045

3.10 刷新权限

有时候我们在使用update命令进行更新后,会发现相关权限没有生效。这个时候我们就需要使用flush privileges命令进行刷新。

如下命令:

flush privileges;

其实flush帮助信息中,已经给我们进行说明了。如下:

clip_image046

3.11 查看show命令

通过3.9我们知道在Administration中有一个比较特别的命令show。

我们可以看到很多show相关的命令,如下:

help Administration;

clip_image047

clip_image048

这个show命令可以查看,我们在用户授权、创建数据库、创建表等执行时所使用的SQL语句。还可以查看数据库引擎、数据库状态、表状态等信息。

查看数据库ilanni创建时执行的sql语句,如下:

show create database ilanni;

clip_image049

注意我们在创建数据库ilanni时,是没有指定数据库使用的语言编码的。但是系统会在执行sql语句时,自动加上语言编码,并且使用默认的语言编码latin1。

如果你记不清楚如何加上语言编码的话,我们就可以创建一个数据库。然后通过show create database命令进行查看,系统是是如何加上语言编码的。然后我们再次删除该数据库,再次按照系统创建时的sql语言执行即可。

如下:

create database ilanni default character set utf8;

clip_image050

查看系统中的数据库,如下:

show databases;

clip_image051

查看master库binlog相关信息,如下:

show master status;

clip_image052

查看ilanni用户授权sql语句,如下:

show grants for ilanni;

clip_image053

查看mysql数据库的表,如下:

show tables;

clip_image054

3.12 查看主从相关的命令

我们在进行mysql主从配置时,会使用到很多很多的命令。这些命令,我们也可以通过帮助信息获得。如下:

help contents;

help transactions;

clip_image055

clip_image056

注意上图中,我们***标记出来的部分。主库授予从库的命令、锁表命令、主库master重置数据库、开启与关闭同步等命令。

我们在从库上执行主库的授权命令时,使用change master to命令。有关change master to命令的具体使用方法,查看帮助。如下:

help change master to;

clip_image057

clip_image058

通过上述两张图,我们就能很容易的知道change master to使用方法,并且帮助信息中也给出实际的例子。

我们在进行导出mysql数据库时,为了保持主从数据库的一致性,此时我们会通过lock命令进行锁表。有关lock命令的使用,我们也可以通过帮助信息进行查看,如下:

help lock;

clip_image059

重置主库master日志,如下:

help reset master;

clip_image060

reset master;

clip_image061

在从库slave上开启同步,如下:

help start slave;

clip_image062

start slave;

show slave status\G

clip_image063

在从库slave上关闭同步,如下:

help stop slave;

clip_image064

stop slave;

show slave status\G

clip_image065

有关mysql主从同步的具体配置方法详见《烂泥:mysql5.5主从同步复制配置》。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何在Windows 11/10中執行SUDO命令 如何在Windows 11/10中執行SUDO命令 Mar 09, 2024 am 09:50 AM

透過sudo指令,使用者可以在提升權限模式下執行指令,而無需切換到超級使用者模式。本文將介紹如何在Windows系統中模擬類似sudo指令的功能。什麼是數道司令部? Sudo(「超級使用者do」的縮寫)是一種命令列工具,允許基於Unix的作業系統(如Linux和MacOS)的使用者以提升的權限執行命令,這些權限通常是管理員所擁有的。在Windows11/10中執行SUDO命令然而,隨著最新發布的Windows11Insider預覽版推出,Windows用戶現在也可以體驗到這項功能。這項新功能使用戶能夠

win11網卡mac位址怎麼查? Win11使用指令取得網路卡MAC位址方法 win11網卡mac位址怎麼查? Win11使用指令取得網路卡MAC位址方法 Feb 29, 2024 pm 04:34 PM

本文將向讀者介紹在Win11系統中如何使用命令提示字元(CommandPrompt)來尋找網路介面卡的實體位址(MAC位址)。 MAC位址是網路介面卡(NIC)的唯一標識符,它在網路通訊中扮演著重要角色。透過命令提示符,使用者可以輕鬆地獲取到當前電腦上所有網路適配器的MAC位址信息,這對於網路故障排查、配置網路設定等任務非常有幫助。方法一:使用「命令提示字元」1、按【Win+X】組合鍵,或【右鍵】點選工作列上的【Windows標誌】,在開啟的選單項目中,選擇【執行】;2、執行窗口,輸入【cmd】指令,然

cmdtelnet指令不被辨識為內部或外部指令 cmdtelnet指令不被辨識為內部或外部指令 Jan 03, 2024 am 08:05 AM

cmd視窗中提示telnet不是內部或外部命令這個問題想必曾經也深深的困擾著你吧,這個問題的出現​​並不是因為用戶們的操作哪裡有什麼不對用戶們也不用太擔心只需要一些小小的操作設定就可以讓cmd視窗提示telnet不是內部或外部指令這個問題迎刃而解,一起來看看小編今天為大家帶來的cmd視窗提示telnet不是內部或外部指令解決方法吧。 cmd視窗提示telnet不是內部或外部指令解決方法:1、開啟電腦的控制面板。 2、找到程式和功能。 3、找到左側的啟動或關閉Windows功能。 4、找到「telnet客戶端

超實用!讓你成為Linux大神的Sar命令 超實用!讓你成為Linux大神的Sar命令 Mar 01, 2024 am 08:01 AM

一、概述sar命令透過從系統活動中收集的資料來展示系統的使用報告。這些報告由不同部分組成,每個部分都包含資料類型和收集資料的時間。 sar指令的預設模式顯示存取CPU的各種資源(如使用者、系統、I/O調度等)在不同時間增量下的CPU使用率。此外,它還顯示給定時間段內空閒CPU的百分比。報告底部列出了每個數據點的平均值。 sar預設每10分鐘報告一次收集的數據,但您可以使用各種選項來篩選和調整這些報告。與uptime指令類似,sar指令也可協助您監控CPU的負載狀況。透過sar,您可以了解過度負載發

hyperv增強會話模式在哪? Win11用指令啟用或停用Hyper-V增強會話模式技巧 hyperv增強會話模式在哪? Win11用指令啟用或停用Hyper-V增強會話模式技巧 Feb 29, 2024 pm 05:52 PM

Win11系統中,可以透過指令來啟用或停用Hyper-V增強會話模式。本文將介紹如何使用指令來進行操作,幫助使用者更好地管理和控制系統中的Hyper-V功能。 Hyper-V是Microsoft提供的一種虛擬化技術,它內建在WindowsServer和Windows10、11(家用版除外)中,允許使用者在Windows系統中執行虛擬作業系統。雖然虛擬機器與宿主機作業系統隔離,但透過設置,它們仍然能夠使用宿主機的資源,如音效卡和儲存設備等。其中一個關鍵設定就是啟用「增強會話模式」。增強會話模式是Hyper

win11小元件怎麼刪除? 一條指令卸載 Windows11小元件功能技巧 win11小元件怎麼刪除? 一條指令卸載 Windows11小元件功能技巧 Apr 11, 2024 pm 05:19 PM

小組件是Win11系統的新增功能,預設是開啟狀態,但是難免會出現有部分用戶不太使用到小組件,看著佔位置,因此想要禁用小組件的情況,那麼應該如何操作呢?下面小編就教大家操作方法,大家可以去試試看。什麼是小組件?小元件是小卡片,用於在Windows桌面上顯示你最喜愛的應用程式和服務中的動態內容。它們顯示在小組件板上,你可以在其中發現、固定、取消固定、排列、調整大小和自訂小組件以反映你的興趣。小組件板經過最佳化,可根據使用情況顯示相關小組件和個人化內容。從工作列的左角開啟小組件板,可在其中看到即時天氣

Linux中的神器:eventfd的原理與應用 Linux中的神器:eventfd的原理與應用 Feb 13, 2024 pm 08:30 PM

Linux是一個強大的作業系統,它提供了許多高效的進程間通訊機制,如管道、訊號、訊息佇列、共享記憶體等。但是,有沒有一種更簡單、更靈活、更有效率的溝通方式呢?答案是有的,就是eventfd。 eventfd是Linux2.6版本引入的一種系統調用,它可以用來實現事件通知,也就是透過一個檔案描述符來傳遞事件。 eventfd包含一個由核心維護的64位元無符號整數計數器,進程可以透過對這個檔案描述子進行read/write來讀取/改變計數器的值,從而實現進程間通訊。 eventfd有什麼優點呢?它有以下幾個特

如何使用LSOF即時監控端口 如何使用LSOF即時監控端口 Mar 20, 2024 pm 02:07 PM

LSOF(ListOpenFiles)是一個命令列工具,主要用於監控類似Linux/Unix作業系統的系統資源。透過LSOF命令,使用者可以獲得有關係統中活動檔案以及正在存取這些檔案的進程的詳細資訊。 LSOF能夠幫助使用者識別目前佔用檔案資源的進程,從而更好地管理系統資源和排除可能的問題。 LSOF的功能強大且靈活,可以幫助系統管理員快速定位檔案相關的問題,例如檔案洩漏、未關閉的檔案描述符等。透過LSOF命令LSOF命令列工具允許系統管理員和開發人員:確定目前正在使用特定檔案或連接埠的進程,在連接埠衝突的情

See all articles