初始数据库

Posted lgw1171435560

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初始数据库相关的知识,希望对你有一定的参考价值。

一、什么是数据库:

一个专门管理数据的软件.特点是:管理数据便捷,高效,安全,支持高并发.

数据库专业的名字叫:数据库管理系统(英语:Database Management System,简称DBMS)我们平常讲的mysql是数据库的一种

数据库现在主流两个大类:
关系型数据库(RDBMS):
    关系型数据库模型是把复杂的数据结构归结为简单的二元关系(mysql就是关系型数据库).操作关系型数据库的命令,我们称之为SQL.不同数据库系统之间的SQL不能完全相互通用
非关系型数据库
注意: 数据库里面的指令必须要用;分号结尾,然后才能执行

          1.开启服务端,mysqld net start mysql
      2.使用mysql自带的客户端进行连接,cmd下输入mysql -u root -p,然后回车,会提示你输入密码,此时初始的root用户还没有密码,所以还是直接回车就可以连接上了
      3.show databases;先不讲里面的内容,说一下这是几个库,每个项目可以有自己单独的一个库,里面放这个项目的所有数据表
      4.创建一个库:create database CRM;然后show databases;查看一下就有了这个crm库,不分大小写,统一会变成小写,对照着我们mysql安装目录下的data文件夹里面的内容看一下,库就是对应的文件夹。
      5.我们目前在所有数据库之上,想在我们自己项目的库里面操作数据,就需要切换到我们自己这个crm项目的库里面进行数据的操作,切换数据库使用use + 库名,例如:use crm;就提示你切换成功了。
      6.我们说过,库里面维护的数据就像一张一张的数据表,类似excel,对不对,那我们创建一张表看一下,命令:
      create table student(
        id int,
        name char(10),
        age int,);
      7.再执行show tables;就可以看到有了一个student表
      8.查看一下这个表里的数据select * from student;发现什么数据也没有        

二、mysql文件介绍:

技术分享图片

重点看一下data文件夹:如果你找不到自己建立的库或者表的文件,可能不在这个data文件夹下面,连接上mysql之后,输入show global variables like "%datadir%";来查看数据文件存储路径,找到路径之后,到对应路径下如果找不到这个文件夹,那么可能是隐藏的,把隐藏的文件显示一下就行了。

 技术分享图片

三、密码设置

方法1: 用SET PASSWORD命令 
首先登录MySQL,使用mysql自带的那个客户端连接上mysql。 
    格式:mysql> set password for 用户名@localhost = password(新密码); 
    例子:mysql> set password for [email protected] = password(123); 

 

 

方法2:用mysqladmin  (因为我们将bin已经添加到环境变量了,这个mysqladmin也在bin目录下,所以可以直接使用这个mysqladmin功能,使用它来修改密码)

    关于mysqladmin的介绍:是一个执行管理操作的客户端程序。它可以用来检查服务器的配置和当前状态、创建和删除数据库、修改用户密码等等的功能,
虽然mysqladmin的很多功能通过使用MySQL自带的mysql客户端可以搞定,但是有时候使用mysqladmin操作会比较简单。     格式:mysqladmin
-u用户名 -p旧密码 password 新密码     例子:mysqladmin -uroot -p123456 password 123     只用mysqladmin的时候,会出现一个warning警告信息:Warning: Using a password on the command line interface can be insecure.,这个没关系,是提示你,
你直接在cmd下使用明文设置密码的时候,是不安全的,因为别人可以通过翻看你输入指令的历史记录来查看到你设置的密码,所以提示你一下,不信你按上下键,可以看到自己之前输入的命令.所以我们最好连接进入到mysql里面之后,再进行密码的修改和设置

 

 

 

方法3:用UPDATE直接编辑那个自动的mysql库中的user表 
    首先登录MySQL,连接上mysql服务端。 
    mysql> use mysql;   use mysql的意思是切换到mysql这个库,这个库是所有的用户表和权限相关的表都在这个库里面,我们进入到这个库才能修改这个库里面的表。
    mysql> update user set password=password(123) where user=root and host=localhost;   其中password=password(123) 前面的password是变量,
后面的password是mysql提供的给密码加密用的,我们最好不要明文的存密码,其中user是一个表,存着所有的mysql用户的信息。     mysql
> flush privileges; 刷新权限,让其生效,否则不生效,修改不成功。

 

 忘记密码,有办法修改,但是你的数据库在你修改期间就必须停止了.所以要牢记密码.

四、永久设置以管理员身份运行cmd窗口

1、创建“cmd.exe”快捷方式: 
2、右击选择“属性”,选择“快捷方式”,再选择“高级”,在选择“以管理员身份运行”,
再单击“确定”。 

 

 五、设置字符集编码

一.在插入数据之前,先执行一条指令:set names latin1;临时修改客户端三炮的字符集,让客户端插入数据的时候按照服务端的字符集编码来插入数据.
二.在配置文件里面修改客户端和服务端参数,可以实现set names latin1;的效果,并且永久生效
1.修改配置文件my.ini文件(win10,unix叫做my.cnf),这个文件是mysql启动的时候加载的一些用户自定制配置的文件
2.首先在安装目录下创建一个my.ini文件(copy一份my-default.ini文件,改名为my.ini文件),使用Notepad++打开,里面写上下面的内容,来看看是不是会生效

 技术分享图片

我们在我们创建的my.ini文件中写上下面几行,然后保存:       

[mysql]   #配置客户端连接的时候,指定一下用户名和密码,那么我们在进行mysql客户端连接的时候,直接输入mysql然后回车就可以了,并且用户是我们下面指定的root用户
user=root
password=666
3. 针对客户端命令的全局配置,当mysql客户端命令执行时,下列配置生效
            [client]
            default-character-set=utf8
4. 只针对mysql这个客户端的配置,3中的是全局配置,而此处的则是只针对mysql这个命令的局部配置
            [mysql]
            user=root
            password=666
            default-character-set=utf8
重启mysql服务,让配置文件生效:
            C:WINDOWSsystem32>net stop mysql
            MySQL 服务正在停止..
            MySQL 服务已成功停止。

            C:WINDOWSsystem32>net start mysql
            MySQL 服务正在启动 .
            MySQL 服务已经启动成功。

 

 数据库指令:

1.库(data文件夹中的文件夹,每创建一个库,这个库的名称就是文件夹的名称,文件夹里面保存着一些这个库相关的初始信息)
增:create database db1 charset utf8; #创建一个库,可以指定字符集       
查:show databases; #查看数据库中所有的库
show create database db1; #查看单独某个库db1的信息       
改:alter database db1 charset latin1; #修改库的字符集,注意语句的格式(其他语句也是这么个格式),alter(修改) database(修改数据库) db1(哪个数据库) charset(字符集) latin1(改成哪个字符集)       
删除: drop database db1; #删除数据库
2、表(操作文件,表是上面库文件夹里面的文件) 先切换库:use db1; #要操作表文件,要先切换到对应的库下才能操作表 查看当前所在的是哪个库:select database(); 增:create table t1(id int,name char(10) )
3. 行(操作文件(表)中的内容/记录)(*****将来的重中之重) 增:insert into t1 values(1,dsb1),(2,dsb2),(3,dsb3); #往t1表中插入三行数据,注意你插入的每行内容都要和你创建表的时候的字段个数和字段属性对应好,注意每行数据以逗号分隔。 insert后面的into可以不用写。 查:select * from t1; #查看t1表中所有字段的数据,select 字段 from 表。 select id,name from t1;#查看t1表中的id和name列的数据,其他的不看,注意格式,每个字段逗号分隔,在cmd窗口下只是展示给我们看,将来我们通过程序获取查询数据的时候,就可以这么获取,
              查询字段的顺序也是可以颠倒的,name,id这样也是可以的
改:update t1 set name=sb where id=2; #把id为2的行(记录)中的name字段的数据改为sb;id>1;id<=1;等等都可以。后面会细讲的~~~ update t1 set name=sb,id=88 where id>2; #对两个字段进行修改 update t1 set name=sb;#如果不指定where,那么会name字段的所有数据都改成sb。 删:delete from t1 where id=1; #删除id为1的行 清空表: delete from t1; #如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。 truncate table t1;数据量大,删除速度比上一条快,且直接从零开始, auto_increment 表示:自增 primary key 表示:约束(不能重复且不能为空);加速查找

 








以上是关于初始数据库的主要内容,如果未能解决你的问题,请参考以下文章

将初始数据提供给片段的正确方法?

将初始数据提供给片段的正确方法?

如何在使用cardview的片段中初始化gridlayoutmanager?

我想在每次选择底部导航项时初始化片段

vscode 用户代码片段 vue初始化模板 Snippet #新加入开头注释 自动生成文件名 开发日期时间等内容

环境初始化 Build and Install the Apache Thrift IDL Compiler Install the Platform Development Tools(代码片段