IE盒子

搜索
查看: 124|回复: 1

MySQL概述

[复制链接]

3

主题

7

帖子

13

积分

新手上路

Rank: 1

积分
13
发表于 2022-9-22 03:39:23 | 显示全部楼层 |阅读模式
数据库相关概念

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

生活中哪些场景用到了数据库:

  • 超市购物
  • 信用卡消费
  • 图书馆
  • 网上购物
  • ...

数据库系统数据库数据库管理系统数据库应用程序等组成。



数据库存储结构

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



名称全称简称
数据库存储数据的仓库,数据是有组织的进行存储DataBase (DB)
数据库管理系统操纵和管理数据库的大型软件DataBase Management System (DBMS)
SQL操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准Structured Query Language


  • 主流的关系型数据库管理系统

    • ORACLE
    • MySQL
    • SQL Server
    • PostgreSQL
    • ......


关系型数据库与非关系型数据库


  • 关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织

    • 优点:
      1、易于维护:都是使用表结构,格式一致;
      2、使用方便:SQL语言通用,可用于复杂查询;
      3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询
    • 缺点:
      1、读写性能比较差,尤其是海量数据的高效率读写;
      2、固定的表结构,灵活度稍欠;
      3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。



  • 非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是文档或者键值对等。它又名NoSQL数据库。随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,特别是大数据应用难题。

    • 优点:
      1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
      2、速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘;
      3、高扩展性;
      4、成本低:nosql数据库部署简单,基本都是开源软件。
    • 缺点:
      1、不提供sql支持,学习和使用成本较高;
      2、无事务处理;
      3、数据结构相对复杂,复杂查询方面稍欠。


MySQL数据库

  • 关系型数据库(RDBMS)

    • 建立在关系模型基础上,由多张相互连接的二维表组成的数据库
    • 特点

      • 使用表存储数据,格式统一,便于维护
      • 使用SQL语言操作,标准统一,使用方便




  • 数据模型



MySQL安装与配置

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

  • DEB软件包可以通过相关命令可以很方便的安装与卸载。该软件包分为两个:服务器端和客户端
  • Generic Binariesr软件包是一个二进制软件包,经过编译生成二进制文件的软件包
  • 源码包是MySQL数据库的源代码,用户需要自己编译生成二进制文件后才能安装。

下载 MySQL APT repository at:
https://dev.mysql.com/downloads/repo/apt/

使用下面的命令进行安装,安装时选择对应的版本:
$ sudo dpkg -i mysql-apt-config_0.8.23-1_all.deb
源设置后后,使用下面的命令进行安装
sudo apt-get update

sudo apt-get install mysql-server


#输入:root密码:1234

#登录Mysql:
mysql -uroot -p1234
deb包安装完成后的目录结构

  • 配置文件 (如 my.cnf) 在目录 /etc/mysql
  • 二进制文件,包,头文件在/usr/bin 和 /usr/sbin
  • 数据文件在 /var/lib/mysql
  • systemd的配置文件在:/etc/systemd/system/multi-user.target.wants/mysql.service

MySQL的使用

MySQL的相关命令
要想查看MySQL的帮助信息,首先登录到MySQL数据库,然后在命令行窗口中输入“help;”或者“\h”命令,此时就会显示MySQL的帮助信息
mysql> help

For information about MySQL products and services, visit:
   http://www.mysql.com/
For developer information, including the MySQL Reference Manual, visit:
   http://dev.mysql.com/
To buy MySQL Enterprise support, training, or other products, visit:
   https://shop.mysql.com/

List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
?         (\?) Synonym for `help'.
clear     (\c) Clear the current input statement.
connect   (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter.
edit      (\e) Edit command with $EDITOR.
ego       (\G) Send command to mysql server, display result vertically.
exit      (\q) Exit mysql. Same as quit.
go        (\g) Send command to mysql server.
help      (\h) Display this help.
nopager   (\n) Disable pager, print to stdout.
notee     (\t) Don't write into outfile.
pager     (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print     (\p) Print current command.
prompt    (\R) Change your mysql prompt.
quit      (\q) Quit mysql.
rehash    (\#) Rebuild completion hash.
source    (\.) Execute an SQL script file. Takes a file name as an argument.
status    (\s) Get status information from the server.
system    (\!) Execute a system shell command.
tee       (\T) Set outfile [to_outfile]. Append everything into given outfile.
use       (\u) Use another database. Takes database name as argument.
charset   (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings  (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.
resetconnection(\x) Clean session context.
query_attributes Sets string parameters (name1 value1 name2 value2 ...) for the next query to pick up.
ssl_session_data_print Serializes the current SSL session data to stdout or file

For server side help, type 'help contents'

命令简写具体含义
?(\?)显示帮助信息
clear(\c)明确当前输入语句
connect(\r)连接到服务器,可选参数数据库和主机。
delimiter(\d)设置语句分隔符。
ego(\G)发送命令到mysql服务器,并显示结果。
exit(\q)退出MySQL
go(\g)发送命令到mysql服务器。
help(\h)显示帮助信息
notee(\t)不写输出文件。
print(\p)打印当前命令
prompt(\R)改变mysql提示信息。
quit(\q)退出MySQL
rehash(#)重建完成散列。
source(.)执行一个SQL脚本文件,以一个文件名作为参数。
status(\s)从服务器获取MySQL的状态信息。
tee(\T)设置输出文件(输出文件),并将信息添加所有给定的输出文件。
use(\u)用另一个数据库,数据库名称作为参数。
charset(\C)切换到另一个字符集
warnings(\W)每一个语句之后显示警告。
nowarning(\w)每一个语句之后不显示警告。

MySQL常用图形化管理工具
MySQL 服务器正确安装以后,可以通过命令行管理工具或者图形化的管理工具来操作 MySQL 数据库。
MySQL 图形化管理工具极大地方便了数据库的操作与管理,除了系统自带的命令行管理工具之外,常用的图形化管理工具还有 MySQL Workbench、phpMyAdmin、Navicat、MySQLDumper、SQLyog、MySQL ODBC Connector。
其中 phpMyAdmin 和 Navicat 提供中文操作界面,MySQL Workbench、MySQL ODBC Connector、MySQLDumper 为英文界面。

MySQL Workbench
MySQL Workbench MySQL 是官方提供的图形化管理工具,分为社区版和商业版,社区版完全免费,
而商业版则是按年收费。支持数据库的创建、设计、迁移、备份、导出和导入等功能,
并且支持 Windows、Linux 和 mac 等主流操作系统。
下载地址:http://dev.MySQL.com/downloads/workbench/。



MySQL Workbench的安装
sudo dpkg -i mysql-apt-config_0.8.19-1_all.deb

sudo apt-get update

sudo apt-get install mysql-workbench-community


#启动命令:
mysql-workbench
回复

使用道具 举报

1

主题

10

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2022-9-22 03:40:14 | 显示全部楼层
[赞同][赞同][赞同]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表