数据库基础知识点

标签: 数据库  数据库服务器  数据结构  计算机  数据库管理

数据库

数据库(Database,DB)

是按照数据结构来组织、存储和管理数据的仓库,其本身可看作电子化的文件柜,用户可以对文件中的数据进行增加、删除、修改、查找等操作。

数据库存储结构

数据库是存储和管理数据的仓库,但数据库并不能直接存储数据,数据是存储在表中的,在存储数据的过程中一定会用到数据库服务器,所谓的数据库服务器就是指在计算机上安装一个数据库管理程序。

数据库管理系统(DBMS)

常见的数据库产品:

  • 关系型数据库:MySQL、Oracle、MSSLQ、Access、Excel、DB2(IBM);SQLite(嵌入式的轻型的数据库)

  • 非关系型数据库(NO-SQL):mongoDB、Hbase,Cassandra

关系型数据库语言由4部分组成,具体如下:

  • (1)数据定义语言(DDL) 数据库
  • (2)数据操作语言(DML) 表操作
  • (3)数据查询语言(DQL) 表查询
  • (4)数据控制语言(DCL) 事物、存储过程等

数据库的安装与配置

平台下安装和配置MySQL:

安装:

配置:

MySQL配置中一些难理解的点:

my.ini(配置文件)

MySQL正常的安装,my.ini会存放在Windows

[client]
port-3306   //客户端端口

[mysql]
default-character-set-gbk  //默认的字符集(字符编码)

[mysqld]
port-3306  //mysql服务器的监听端口
basedir="E:/phoStuy/MySQL/"
datadir="E:/phoStuy/MySQL/data"
character-set-server-gbk
default-storage-endine-MyISAM  //数据库存储引擎
                                MYISAM INNODB(区别)

sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
max_connections=512  //最大连接数

query_cache_size=0
table_cache=256
tmp_table_size=18M

thread_cache_size=8
myisam_max_sort_file_size=64G
myisam_sort_buffer_size=35M
key_buffer_size=25M
read_buffer_size=64k
read_rnd_buffer_size=256k
sort_buffer_size=256k

Linux平台下安装MySQL

基于Linux平台的MySql安装文件有三个版本,具体介绍如下:

1、RPM软件包

2、Generic Binariesr软件包

3、源码包

  • RPM软件包:

    RPM软件包是一种Linux平台下的安装文件,通过相关命令可以很方便的安装与卸载。该软件包分为两个:服务器端和客户端,需要分别下载和安装。在安装时首先需要安装服务器端,然后再安装客户端。

  • Generic Binariesr软件包

    Generic Binariesr软件包是一个二进制软件包,经过编译生成二进制文件的软件包。

  • 源码包

    源码包是MySQL数据库的源代码,用户需要自己编译生成二进制文件后才能安装。

MySQL官方推荐在Linux平台下使用RPM软件包安装MySQL,接下来就演示一下如何使用RPM软件包来安装MySQL:

下载RPM安装包

首先官网http://dev.mysql.com/downloads/mysql/5.5.html#downloads,下载RPM安装包,RPM安装包分为

MySQL服务端和客户端。本事例以下列版本演示。

MySQL-server-5.5.31-2.el6.i686.rpm 
MySQL-client-5.5.31-2.el6.i686.rpm
检查是否安装过MySQL

在安装之前,首先要检查当前系统是否已经安装了MySQL,否则在安装时可能产生冲突。具体的查看命令如下所示:

rpm -qa | grep mysql

执行完上述命令后,如果出现MySQL的相关信息,例如mysql-libs-5.1.66-2.el6_3.i686就说明当前系统已经安装了MySQL,此时,如果希望卸载该版本的MySQL,可以使用以下命令:

rpm -e mysql-libs-5.1.66-2.el6_3.i686  --nodeps
安装MySQL 服务端和客户端

接下来将MySQL安装包放在Linux系统的Downloads目录下,然后进入Downloads目录,在该目录中安装MySQL服务端,具体命令如下:

rpm -ivh MySQL-server-5.5.31-2.el6.i686.rpm

MySQL的服务端安装成功后,接下来还需安装MySQL的客户端。在安装客户端时需要输入如下命令:4

rpm -ivh MySQL-client-5.5.31-2.el6.i686.rpm
启动MySQL服务

MySQL 安装完成后,要想使用MySQL服务端,还需要启动MySQL服务,具体命令如下:

service mysql start

上述命令用于开启mysql服务,值得一提的是,MySQL的服务命令实际上有4个参数,这四个参数分别代表不同的意义,具体如下:

1、start:启动服务
2、stop:停止服务
3、restart :重启服务
4、status:查看服务状态 
操作MySQL

(1)设置MySQL登录密码

mysql_secure_installation

(2)登录MySQL

mysql -uroot -pitcast

启动MySQL服务

  • 1、通过Windows服务管理器启动MySQL服务:

    通过Windows的服务管理器可以查看MySQL服务是否开启,首先点击【开始】菜单,在弹出的菜单中选择【运行】命令,打开【运行】对话框输入“services.msc”命令,单击【确定】按钮,此时就会打开Windows的服务管理器。

  • 2、通过DOS命令启动MySQL服务

    启动MySQL服务不仅可以通过Windows服务管理器启动,还可以通过DOS命令来启动,命令如下:

    net start mysql
    

    DOS命令行不仅可以启动MySQL服务,还可以停止MySQL服务

    net stop mysql
    

登陆MySQL数据库

1、使用相关命令登录
登录MySQL数据库可以通过DOS命令完成,具体命令如下:

mysql> –h localhost –u username –p

在上述命令中,mysql为登录命令,-h后面的参数是服务器的主机地址,-u后面的参数是登录数据库的用户名,-p后面是登录密码

MySQL的相关命令:

修改MySQL密码:

  • 方法1、用SET PASSWORD命令
    • 首先登陆MySQL。
    • 格式:mysql>set password for 用户名@localhost = password(’新密码’);
    • 例子:mysql>set password for [email protected] = password (‘123’);
  • 方法2、用mysqladmin
    • 格式:mysqladmin -u用户名 -p旧密码 password 新密码
    • 例子:mysqladmin -uroot -p123456 password 123
  • 方法3、用UPDATE直接编辑user表
    • 首先登录MySQL。
    • mysql> user mysql;
    • mysql> update user set password=password(‘123’) where user = ‘root’ and
    • host=’localhost’;
    • mysql> flush privileges;
  • 方法4、在忘记root密码的时候(Windows为例)
    • 1、关闭正在运行的MySQL服务。
    • 2、打开DOS窗口,转到mysql\bin目录。
    • 3、输入mysql –skip-greant-tables 回车。 –skip-grant-tables的意思是启动MySQL服务的时候跳权限表认证。
    • 4、在开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
    • 5、输入mysql回车,如果成功,将出现MySQL提示符 >。
    • 6、连接权限数据库:use mysql;。
    • 7、改密码:update user set password=password(“123”) where user=”root”;
    • 8、刷新权限(必须):flush privileges;
    • 9、退出quie
    • 10、注销系统,在进入,使用用户名root和刚才设置的新密码123登录。

查看和创建数据库

1、创建数据库的基本语法格式如下所示:

create database 数据库名称:
例如:mysq> create databases bjsxt;

2、查看某个已经创建的数据库信息:

show create database 数据库名称:

3、修改数据库

修改数据库编码的基本语法格式如下所示:
ALTER DATABASE 数据库名称 DEFAULT CHATATER SET 编码方式 COLLATE 编码字符集_bin
例如:
ARTER DATABASE bjsxt DEFAULT CHATACTER SET utf8 COLLATE utf8_general_ci;

4、删除数据库的基本语法格式如下所示:

DROP DATABASE 数据库名称;

数据类型

1、整数类型

根据数值取值范围的不同,MySQL中的整数类型可分为5种,分别是TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT

2、浮点数类型

在MySQL数据库中,存储的小数都是使用浮点数和定点数来表示的。
浮点数的类型有两种,分别是单精度浮点数类型(FLOAT)和双精度浮点类型(DOUBLE)。而定点数类型只有DECIMAL类型。

3、日期与时间类型

为了方便在数据库中存储日期和时间,MySQL提供了表示日期和时间的数据类型,分别是YEAR、DATE、TIME、DATETIME和TIMESTAMP

4、字符串和二进制类型

为了存储字符串、图片和声音等数据,MySQL提供了字符串和二进制类型

数据表的基本操作(CRUD)

1、创建数据表格式:

    create table 数据表名称
        (
            字段名1  数据类型,
            字段名2  数据类型,
            字段名n  数据类型
        );

2、使用SHOW CREATE TABLE 表名称;

    参数"\G",是显示结果整齐美观
    show create table tb_grade \G;
    show tables;   #查看当前数据库的所有表名称
    DESCRIBE 表名;  或者是:   desc 表名称;

3、删除数据表

    DROP TABLE 表名;

4、修改数据表:

    4.1 修改表名称
        alter table grade rename to tb_name;
    4.2 添加字段名称(数据无损)
        alter table tb_name add name chat(20);
    4.3 修改字段名称(数据无损)
        alter table tb_name change name username varchar(20);
    4.4 修改字段属性(数据类型) (数据有问题)
        alter table tb_name modify age int(11);
    4.5 修改字段排列位置(数据无损)
        alter table tb_name modify age int(11) first;
        alter table tb_name modify id int(11) after grade;
    4.6 删除字段名称(数据有损)
        alter table tb_name drop age;
    注意:备份数据后再进行操作
版权声明:本文为Ambiguous_原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Ambiguous_/article/details/74943263