00:01
大家好,欢迎大家继续收看上硅谷的link预算视频,我是刘川老师。那么我们本期课呢,来讲一下关于myle的一些管理命令,OK,也就说我们myle的一些基础的一些命令,OK,首先啊,我们这个从第一个开始来看啊,我们的第一个命令呢,叫创建登录用户,其实这个我们在数据库初始化的时候啊,已经有一个用户可以登录了,那就是我们的root用户。并且呢,我们使用MYSQ的那个命令给用户设置了密码。但是呢,这个由于啊,我们这个数据库这个东西就是MYSO这个东西啊,它呢类似于是一个独立的操作系统。在里边啊,他的root的那个用户啊呃,身份类似于我们Linux当中的那个用户,权限非常大啊,非常大,所以这个时候为了我们这个安全方,呃,安全这个。数库的安全着想,我们呢,尽量的不要这个让别人再连接我们数据库的时候啊,已入的身份来进行连接,就说你不要把你的数据库的root的这个密码告诉别人,否则这样呢,你的数据库的安全性会下降非常多,那如果说我们需要让别人来在我们这个数据库里边进行一个内容的保存的话,就是连接数据库的话,其实是可以给他一个这个。
01:21
授权一个账户,并且呢,给他授权的这个账户的权限可以相对较小一些,那首先呢,我们得先学会如何呃。创建一个数据库的账户,就类似于如何在Linux里边创建账户一样的,那我们来看一下。在Linux当中,创建数据库账户的方式是create命令。然后create告诉他,你要创建的是一个user用户,后边写上你的用户名,艾特呢作为分隔符,分隔符后边是这个用户是以什么方式登录的。连接数据库的方式有两种,第一种是本地登录,就是你数据库在哪台机器上,你就在哪台器上登录,第二种是远程登录,数据库在另外一台机器上,你在另外一台机器上进行登录的时候啊,那这个艾特后边呢,有两种写法,第一种呢是写成百分号,就是任何的远程地址都可以,第二种呢,就是local host local host就是仅允许本地那。
02:18
这个任何远程地址可不可以写成那种某一个原地的也是可以的,比如说你可以写某一具体的IP地址,比如说你想让,比如说你是幺零,然后呢,你想让二零远程连接你,你就直接写1921688820。比如说你是幺零,你是8810,你想允许八八整个网段都可以连接你,你就写八八点。写八八点幺九二幺六八八八点就可以了,这个点后面加一个百分号,百分号就代表任意的意思,那任意的意思,一个百号代表任意IP地址,然后呢,一个网段呢,就写某八八点,百分号就是任八八网段的任意一个IP。那后面这个叫指的是要声明一下我们这个账户所使用密码,后面写密码就可以了。
03:05
然后呢,这个就是我们创建一个呃,用来登录数据库账户的这么一个用户,OK,比如说我们这个地方有个二零,要让二零去登录幺零,那就是允许一个呃远程的主机去登录我们的幺零。注意是远程主机动幺零。那想允许这个远程的二零登陆幺零,必须要去给它创建成那个百分号那个模式。我们来去连接一下数据库。连成说我们来创建一下create,然后呢一举早账户名呢,比如说叫张三,然后呢艾特后边呢是允许哪个用户啊,允许这个用户以什么样的方式来登录,如果你写百分号呢,就是人允许任意远程地址。如果你写192.168.88。点二零就只允许二零呢,其他不允许,如果你写八八点百分号。
04:04
那就是八八网段所有的都可以,那这个地方我们先用这个什么呢?这个100分号,直接用整个百分号代替就可以了。然后呢,密码I dent ifid。OK,然后BY后边是密码。OK,那这个东西是简单一点可以了,OK,这样串就没有问题了,注意数据库里边的每个命令的结尾都有分号结尾。你不告,你不写分号,他就认为你没有结束,他认他认为你需要还要进行写入,OK,这就是一个授权成功了,咱们来尝试一下。那在客户端上要想连接另外一个主机上的数据库,必须要有一个客户端的连接工具,就是MYSQL。所以说我们要使用。要么?港版。Install方式。把你们的MYSQL安装上。然后呢,把这个客户端安装成功之后呢,我们使用这个客户端来连接我们的数据库。
05:11
稍等一下。OK。使用MYSQL命令杠U。Root-P密码123456。然后呢,这个时候需要什么呢?需要指定一下你要登录的远程主机是什么,然后我们来看一下我们这个文本里有没有写,我记得这个文本里是有的。那在这可以使用杠H指令登录的位置,比如说你登录是另外一个远程主机,你就杠H加FP地址就可,可以杠H192.168.88.10就可以了。这个时候。下去试一下。123456。不可以,呃,我们的这个88.20。
06:05
不被允许吗?我看一下授权啊。张三,我用的是什么?我用的是root,用错账户了啊OK。一下账户不能用,入推张三才可以。123456 OK,没问题,看我们现在就以这个被授权了的张三的身份远程登录到了我们的这个,呃,幺零主机上的马上,但是我们所使用的账户身份是张三,而张三有什么权限呢?我们这个时候可以用受das受它的位次方式来看一下,没能看到还库。这个时候你会发现不一样,你们在那个以入的身份登录的那个数据库里边。看到的里边是有什么?的那个这个就不说了。MY和test。而在张三的生命里边,只有the test。那个有。Root用户看到其他人是看不到的。
07:00
那其实看不到,这也就意味着我们这个普通这个用户的身份这个比较小一些,那比较小一些。那这个呢,就是一个,呃。创建一个用户的方式,如果你想创建一个本地的,你就在创建一个这个后边写。Local就可以了。OK,然后呢,这个来看一下用户为自己更改密码啊,用户为自己更改密码,比如说这个我呢是给这个张三这个人给他设置密码,初始密码123456,我要求他自己登录之后自己改一下,自己怎么改啊,自己改密码方式就是set password等于password括号里边密码就可以了。S。Password等于。Password。括号里边密码是改成。A,嗯,这是什么单引号?改成。1234566个一。改完了,改完了。这时我们来退出一下。
08:00
我再来,你看这个地方,我写123塑六啊。登不上。Access,但是我换成六个一。都可以登录成功了就没有问题了,看这就是嗯。就是用户给自己改密码,就说我张三登录了,我张三给自己改,你直接这样改就没有问题了。如果呢,你想给别人改,那首先你得是root,也就是说普通用户除了root以外的用户是不能给别人改密码的,那root可以随便给别人改,那root怎么改呢?比如说这个地方看一下set password for at硅谷at,这是给at硅谷这个用户改密码,那么这个地方我们就给那个张三改密码就可以了,我给张三改密码,给他改成123456,给它改回来我们改啊,Set password for。张三艾特以什么方式登录的那个等于password就可以来改一下。Set。Password。张三。然后。
09:01
以远程方式登录的那个张三,然后呢,把他的密码等于password新设置成什么。然后。等于。Password。新设置成。123456。注意,一般情况下,我们要设置某个值的话,这个值一般要用单引号引起来。一般设置某个值的话,这个值用单项引起来,这样试就可以了,我们来尝试一下,OK,没有问题了。这是。哦,这还是给自己设置是吧。含水,可我以路的身份来执行一下,是的。你给它改成123456123123。来退出一下。来登录一下。123123。这就是我们的这个改密码的方式啊,当然这个方式也适用于自己给自己改啊,这个方式也适用于自己给自己改,你给别人你是改不了的,OK。
10:08
然后呢,再来看一下关于这个root,找回自己的密码就是root,万一你把root这个管理员身份证密码忘了怎么办啊,这个呢是需要我们来这个掌握一下的,比如说呃,忘密码了需要先关闭数据库,然后呢修改主配置文件,OK,那么先。让这个远程这个推掉。啊,这边也推掉。关于数据库的方式就是。My stop。然后呢,去修改主汇软件YM。ETC下的点CF。打开之后呢,在马D这个位置啊,在马D这个位置加一行哦一下。加什么内容呢?加skip grant tables。Skips这句话意思就是跳过授权表。
11:00
啊,跳过授权表,那跳过了授权表也就意味着不再去找那个MYSQL库当中的那个user表,然后进行一个用户身份认证。不进行用户身份认证了,就是没有密码也可以登录呗,就这个意思啊,就这意思,所以说啊,我们呢,这个加上这句话之后,就相当于跳过密码验证了啊,跳过密码验证了,然后我们去启动数据库。把数据库启动起来。数据库启用起来之后呢,我们再用MY-U。Root看。我没有指纹码,直接就可以进来,为啥?跳过密码。跳过密码进来之后就可以干嘛呀,给自己更新一下自己的密码了。给自己更新一下,自己看这句话update更新啊,之前都是。Create创建show查看。啊之类的。Update是更新,更新谁呢?更新MYSQL表的MYSQL库user表。
12:01
啊,设置谁呢,设置密码。那设置密码这个字段里边的密码为多少呢?为新密码是多少多少,后边这个where得是条件当条件什么条件当用户是root的时候,比如说给root用户设置它的密码。把他密码改什么,把他密码改成那个新的密码就可以了。咱们来设置一下。这个地方里边的字符集有问题,看到没有,里边的这个单引号是中文的,那不行,这个地方就别粘贴了,我们自己写了。给弄起来。然后呢,叫update。My code。余子表。然后set。Password等于password。
13:01
新的值是原来的密码是123456是吧,现在是123123。然后呢,这是设置的新的密码,然后后边写VR条件。User等于。Root。当用户名是root的时候,改变他的密码。然后我们再来尝试CTRLD。然后呢,注意由于修改过密码,所以说我们要去。把这个跳过密码这一行给注入了,不用跳过密码了。保存一下,然后再把MYSQL重启一下。MYQ重启之后就需要就就又得需要密码,你看着我如果直接登录的话,你看登不了,为啥没有密码。123123就可以了,但是原来的123456就可以。
14:03
这就是root,如果忘了密码的时候怎么办?就通过这个叫啊。Skip grant table的这个选项,来跳过数据库的一个安全认证,然后来进行一个这样的一个登录,然后来进行这样一个登。OK,这就是我们root找回密码的方式。OK。好了,接着我们看第六个,第六个叫创建查询。数据库啊。创建create查询叫叫。就是列出的意思啊,列出的意思。SH。等我。登录成功之后,我们目前先查看一下有哪些数据库啊。Show data show列出目前我们有一个库,两个库,这个库不是啊,这个不是。然后我们先创建一个c create data。S。不是负数啊,不是负数,创建了就不是负数了。
15:02
创建一个库,这个库呢叫。你看我没有写分号,所以导致我回撤的时候,他告诉我,对,还是继续,还没写完,加一分号就可以了。然后我再来瘦。一个叫艾特硅谷的库。这就是创建和查询。然后再来看创建数据表。创建数据表,第一步要先进入到某个库,你得先进去,然后才能创建,你不能说表和库是同一级别的,表是在库里边。啊,表示在库里边儿,我要先进入库,然后再出现数表。进入库的方式用use use是选择,我选择这个叫at硅谷的库。我在这个库里边上一表没有问题。用柚子来选择就可以了,然后呢,进去之后用create table。然后指定表名就可以了。那这个地方不能像创建库那样直接是。要创一个表,写个表名就完事了,而是大家都知道,我们的数据库的表里边是个二维表结构,你一定要告诉他你的二维表结构里边那个有几个字段。
16:10
记录这个玩意是需要我们自己填的,也就是说行,每一行的数据需要我们自己填,但是你你在创建这个表的时候,你得先告诉他你有几个列,而且你每个列的列名是什么,每个列的列。要求是什么?就是每个字段的字段名和字段的要求,就是字段的类型是什么,都得指定清楚。制定方式很简单啊,这个在那个表的后边加一小括号,小括号里边直接写,哎,一个字段一个字段类型,逗号一个字段一个字段类型就可以了。OK,我们来试一下。Data啊,不对,是table。这个表呢,叫。Y1。或者叫ae吧,那叫ae,然后呢,Ae后边你要这个设置,比如说我们要设置第一个字段叫ID字段啊。
17:02
ID字段的类型是int类型。然后呢,逗号。第二个字段呢,叫name。啊,内幕的类型呢,是叉类型。叉叉类型或者叫叉类型都行,然后呢,是。20啊。然后再写第三个ID name age age是年龄啊,年龄,年龄呢也得是类型的。如果再要详细的话,可能还得那个更详细的是那个长度啊等等等等等等。然后呢,你可以继续写,有多少你写多少就行。当然这个地方我们就三个字段就可以了。格式。叉类型可以了。你看我们就创建了这样一个数据表。表怎么查看,用show?Tables。
18:00
就可以看到表明了啊。那表结构呢?表结构现在还看不到,为什么。啊,表现在只有第一行是一个是一个,这个就是列名啊,里边还没有任何数据啊,但我们可以看一下这个表里的表结构,也就是说这个表的每一个字段的字段类型是啥,为什么用。Me discovery。Describe a1。就看到没有三个必要的。ID name edge以及每个字段的类型。啊,没有主要类型。但是现在里边还没有任何数据啊,里边还没有任何数据,那接下来我们来干嘛呀。看一个稍微复杂点的创建这个。这个。我们的表的方式,刚才创建表的时候比较简单啊,比较简单,就直接只是创建了个字段名和字段,简单的字段类型稍微复杂点是这样的,比如说创建第二个表。
19:02
第二个表呢,里边还是几个对应的字段啊,还是几个对应的字段,就是ID字段,Name字段,Age字段。但是呢,除了原来设置的那个什么int类型啊,叉类型int类型之类的,那还有加了一些啊,还有加了比如说必须是正整数。那不是正数,比如说必须是自增长啊增长。然后呢,比如说这个name这个地方呢,是默认为空值啊,就是你不写的话,默认为空值啊,长度是30。然后呢,再一个就是比如说。我们这个年龄这个字段,年龄这个字段默认为零,默认为零,然后呢,又加了一个,一句话叫primary key啊primary key primary key就是主键的意思,设置谁为主键,设置ID这个字段为主键,比如说我们的第一个列第一个字段,我们的那个叫ID的是一个。呃,主见,那主见的话,主见约束的话,还记得主见约束的要求吧。主线约束的要求是,首先第一个是不能为空啊。
20:03
太空第二个是不能重复。01.34就说,哎,不能不能为空不能为啊,不能重复,OK,这就是我们第二种设置方式那。这个设置方式的话,如果你写的东西比较多,你可以这个,比如说写完这么一句话,我要创一个A2表,然后第一个字段什么什么东西写个逗号,然后呢直接回车,由于你没有写分号,它不会结束的。因为你没有写方法,它不会结束的,然后再写一个字段。写完了再逗号,再。再不写分号,然后再这东西写完之后就和这个一样,你看不就是每个字段中间的那个。逗号结束嘛,只是我逗号之后没有接着写,而是换行写了,但是你最后都写完了之后,你只要是括号括的数量没有问题,你写的内容没有问题,你最后补一分号就是一样的写成一行和你人为手动换行。这个没有什么任何区别啊,没有任何区别,因为它只有遇到分号的时候,才认为你这个命令结束了啊,才会认为你这个命令结束了,OK,我们可以按照这个来设置一下啊,可以按照这个来设置一下,就是相比A1而言,A2创建的这个表里边儿同样是三个字段,但是相应的这个字段的要求。
21:15
只是更复杂了一些而已啊。是更复杂了一些。来创建一下。Create。然后呢,这个A2呢,这个。然后这个A2呢,A2里边三个字段啊,这个很简单啊。一个叫ID还是int类型,但是呢,除了int类型之外,我们还有一个叫正数。就政府。叫UNSI。JN。然后呢?除了之外,还有一个是诺。
22:06
然后再一个就是。C。这个增长。Auto increment。然后。逗号。然后再一个就是内字字啊。注意这个地方尽量的不要写错了啊,写错了如果是没法回来,这个继续重新编辑啊。第二个是name,那name的字段话呢是叉,刚才我们在那边的话是20,那我们就写20就可以了。Not default。然后默认是。通。只是写了一个啊。单引号里边是没有任何内容的啊,里面是。然后呢,再一个是第三个是我们的age字段int类型。
23:05
它呢,还有一个要求就是not default0。比如说默认的默认值是零,然后再一个就是primary key。Primary primary k的指定对象是ID,也就说ID为那个主件啊,ID为那个主啊。OK,创建一下。一个语法错误。这个地方的错误是那个咱们掉了一个括号,看这个地方,我们的这个前边有一个。C a2。然后呢,前面有个括号,然后呢,我们的这个。指定primary的这个ID的括号是这个它的括号,我们没有对这个第一个括号做一个结尾,所以我们要给它加一个括号结尾啊。
24:00
如果说。执行命令,如果说执行命令报错了啊。按上键可以调出历史名额来,然后呢,看一下你那个哪个地方有错误,然后呢,来进行一个这样的一个修改,OK。好了,我们创建一下,OK,没问题。那创建好了,我们这个对应的这个相对复杂点的一个呃,表之后呢,我们来看一下这个表结构,用看一下这个表结构。Describe。然后看一下这个。A2表的结构。A2表的结构和A1表的结构就。不太一样啊,多了一些要求啊,多了一些要求。这个首先是整数类型,然后呢是正整数,然后呢是逐渐,然后呢是自增长啊其他的可能都差不多,但是默认值这个地方不是特别一样,默认值这个地方不太一样。OK,那这个呢,就是我们的这个关于呃,创建库,创建表,创建用户等等这些操作啊,创建用户这些操作,OK,那我们这一课就先讲到这儿,然后我们后续的这个其他的命令,我们下节课再来讲,OK,我们下节课再见。
我来说两句