데이터 베이스 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 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 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("superuser do"의 약어)는 Linux 및 MacOS와 같은 Unix 기반 운영 체제 사용자가 일반적으로 관리자가 보유하는 높은 권한으로 명령을 실행할 수 있도록 하는 명령줄 도구입니다. Windows 11/10에서 SUDO 명령 실행 그러나 최신 Windows 11 Insider 미리 보기 버전이 출시되면서 Windows 사용자는 이제 이 기능을 경험할 수 있습니다. 이 새로운 기능을 통해 사용자는 다음을 수행할 수 있습니다.

Win11에서 네트워크 카드의 MAC 주소를 확인하는 방법 Win11에서 네트워크 카드의 MAC 주소를 얻는 명령을 사용하는 방법은 무엇입니까? Win11에서 네트워크 카드의 MAC 주소를 확인하는 방법 Win11에서 네트워크 카드의 MAC 주소를 얻는 명령을 사용하는 방법은 무엇입니까? Feb 29, 2024 pm 04:34 PM

이 문서에서는 명령 프롬프트(CommandPrompt)를 사용하여 Win11 시스템에서 네트워크 어댑터의 물리적 주소(MAC 주소)를 찾는 방법을 독자에게 소개합니다. MAC 주소는 네트워크 통신에서 중요한 역할을 하는 네트워크 인터페이스 카드(NIC)의 고유 식별자입니다. 명령 프롬프트를 통해 사용자는 현재 컴퓨터에 있는 모든 네트워크 어댑터의 MAC 주소 정보를 쉽게 얻을 수 있으며 이는 네트워크 문제 해결, 네트워크 설정 구성 및 기타 작업에 매우 유용합니다. 방법 1: "명령 프롬프트" 사용 1. [Win+X] 키 조합을 누르거나 [마우스 오른쪽 버튼 클릭] 작업 표시줄의 [Windows 로고]를 클릭하고 메뉴 항목이 열리면 [실행]을 선택합니다. .창을 실행하고 [cmd] 명령어를 입력한 후

Hyperv 고급 세션 모드는 어디에 있습니까? Win11에서 명령을 사용하여 Hyper-V 고급 세션 모드를 활성화 또는 비활성화하는 팁 Hyperv 고급 세션 모드는 어디에 있습니까? Win11에서 명령을 사용하여 Hyper-V 고급 세션 모드를 활성화 또는 비활성화하는 팁 Feb 29, 2024 pm 05:52 PM

Win11 시스템에서는 명령을 통해 Hyper-V 고급 세션 모드를 활성화하거나 비활성화할 수 있습니다. 이 문서에서는 명령을 사용하여 사용자가 시스템에서 Hyper-V 기능을 더 잘 관리하고 제어할 수 있도록 돕는 방법을 소개합니다. Hyper-V는 Microsoft에서 제공하는 가상화 기술로 Windows Server와 Windows 10 및 11(Home Edition 제외)에 내장되어 있어 사용자가 Windows 시스템에서 가상 운영 체제를 실행할 수 있습니다. 가상 머신은 호스트 운영 체제에서 격리되어 있지만 설정을 통해 사운드 카드, 저장 장치 등 호스트 리소스를 계속 사용할 수 있습니다. 주요 설정 중 하나는 고급 세션 모드를 활성화하는 것입니다. 고급 세션 모드는 Hyper입니다.

cmdtelnet 명령이 내부 또는 외부 명령으로 인식되지 않습니다. cmdtelnet 명령이 내부 또는 외부 명령으로 인식되지 않습니다. Jan 03, 2024 am 08:05 AM

cmd 창에는 telnet이 내부 또는 외부 명령이 아니라는 메시지가 표시됩니다. 이 문제는 사용자 작업에 문제가 없기 때문에 나타나지 않습니다. 몇 가지 작은 단계를 수행하면 작업 설정을 통해 텔넷이 내부 또는 외부 명령이 아니라는 cmd 창 문제를 해결할 수 있습니다. 오늘 편집기에서 가져온 텔넷이 내부 또는 외부 명령이 아니라는 메시지를 표시하는 cmd 창에 대한 솔루션을 살펴보겠습니다. cmd 창에 텔넷이 내부 또는 외부 명령이 아니라는 메시지가 표시됩니다. 해결 방법: 1. 컴퓨터의 제어판을 엽니다. 2. 프로그램과 기능을 찾아보세요. 3. 왼쪽에서 Windows 기능 켜기/끄기를 찾습니다. 4. "텔넷 클라이언트"를 찾으세요

매우 실용적입니다! 당신을 리눅스 마스터로 만들어주는 Sar 명령 매우 실용적입니다! 당신을 리눅스 마스터로 만들어주는 Sar 명령 Mar 01, 2024 am 08:01 AM

1. 개요 sar 명령은 시스템 활동에서 수집된 데이터를 통해 시스템 사용 보고서를 표시합니다. 이러한 보고서는 다양한 섹션으로 구성되어 있으며 각 섹션에는 데이터 유형과 데이터 수집 시기가 포함되어 있습니다. sar 명령의 기본 모드는 CPU에 액세스하는 다양한 리소스(예: 사용자, 시스템, I/O 스케줄러 등)에 대해 다양한 시간 증분으로 CPU 사용량을 표시합니다. 또한 특정 기간 동안 유휴 CPU의 비율을 표시합니다. 각 데이터 포인트의 평균값은 보고서 하단에 나열됩니다. sar 보고서는 기본적으로 10분마다 데이터를 수집하지만 다양한 옵션을 사용하여 이러한 보고서를 필터링하고 조정할 수 있습니다. uptime 명령과 마찬가지로 sar 명령도 CPU 로드를 모니터링하는 데 도움이 될 수 있습니다. sar를 통해 과도한 부하 발생을 이해할 수 있다.

Linux에서 서비스를 다시 시작하는 올바른 방법은 무엇입니까? Linux에서 서비스를 다시 시작하는 올바른 방법은 무엇입니까? Mar 15, 2024 am 09:09 AM

Linux에서 서비스를 다시 시작하는 올바른 방법은 무엇입니까? Linux 시스템을 사용하다 보면 서비스를 다시 시작해야 하는 상황이 자주 발생하지만, 서비스를 다시 시작할 때 서비스가 실제로 중지되지 않거나 시작되지 않는 등의 문제가 발생할 수도 있습니다. 따라서 서비스를 다시 시작하는 올바른 방법을 익히는 것이 매우 중요합니다. Linux에서는 일반적으로 systemctl 명령을 사용하여 시스템 서비스를 관리할 수 있습니다. systemctl 명령은 systemd 시스템 관리자의 일부입니다.

LSOF를 사용하여 실시간으로 포트를 모니터링하는 방법 LSOF를 사용하여 실시간으로 포트를 모니터링하는 방법 Mar 20, 2024 pm 02:07 PM

LSOF(ListOpenFiles)는 Linux/Unix 운영 체제와 유사한 시스템 리소스를 모니터링하는 데 주로 사용되는 명령줄 도구입니다. LSOF 명령을 통해 사용자는 시스템의 활성 파일과 이러한 파일에 액세스하는 프로세스에 대한 자세한 정보를 얻을 수 있습니다. LSOF는 사용자가 현재 파일 리소스를 점유하고 있는 프로세스를 식별하는 데 도움이 되므로 시스템 리소스를 더 잘 관리하고 가능한 문제를 해결할 수 있습니다. LSOF는 강력하고 유연하며 시스템 관리자가 파일 누출, 닫히지 않은 파일 설명자 등과 같은 파일 관련 문제를 신속하게 찾는 데 도움이 될 수 있습니다. LSOF 명령을 통해 LSOF 명령줄 도구를 사용하면 시스템 관리자와 개발자는 다음을 수행할 수 있습니다. 포트 충돌이 발생할 경우 현재 특정 파일이나 포트를 사용하고 있는 프로세스를 확인합니다.

Linux의 아티팩트: eventfd의 원리 및 응용 Linux의 아티팩트: eventfd의 원리 및 응용 Feb 13, 2024 pm 08:30 PM

Linux는 파이프, 신호, 메시지 큐, 공유 메모리 등과 같은 효율적인 프로세스 간 통신 메커니즘을 제공하는 강력한 운영 체제입니다. 하지만 더 간단하고 유연하며 효율적인 의사소통 방법이 있을까요? 대답은 '예'입니다. 그게 eventfd입니다. eventfd는 Linux 버전 2.6에 도입된 시스템 호출로, 이벤트 알림을 구현하는 데, 즉 파일 설명자를 통해 이벤트를 전달하는 데 사용할 수 있습니다. eventfd에는 커널이 유지 관리하는 64비트 부호 없는 정수 카운터가 포함되어 있습니다. 프로세스는 프로세스 간 통신을 달성하기 위해 이 파일 설명자를 읽고 쓰면서 카운터 값을 읽고 변경할 수 있습니다. eventfd의 장점은 무엇입니까? 그것은 다음과 같은 기능을 가지고 있습니다

See all articles