MySql教程

数据库理论和安装MySQL

本文主要是介绍数据库理论和安装MySQL,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

数据库定义

  数据库是存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。但是数据库并不是随意地将数据进行存放,是有一定的规则的,否则查询的效率会很低。当今世界是一个充满着数据的互联网世界,充斥着大量的数据。即这个互联网世界就是数据世界。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。

 

 

 

 

 

  数据库是一个按数据结构来存储和管理数据的计算机软件系统。数据库的概念实际包括两层意思:

    (1)数据库是一个实体,它是能够合理保管数据的“仓库”,用户在该“仓库”中存放要管理的事务数据,“数据”和“库”两个概念结合成为数据库。

    (2)数据库是数据管理的新方法和技术,它能更合适的组织数据、更方便的维护数据、更严密的控制数据和更有效的利用数据。

  数据库作为最重要的基础软件,是确保计算机系统稳定运行的基石。

 

数据库本质

  我们知道早期数据存储直接保存在本地硬盘上,无法实现共享。打个比方,在家里下载的单机游戏,到朋友家玩同样的游戏,游戏进度是没办法同步的。如果要同步,是不是需要把进度放到某个固定的服务器(计算机),然后我们登录账号去同步那台计算机的游戏进度。

  数据库存储的数据可以在任何一台计算机上访问,那么数据库所在计算机时服务器,其他访问数据库的计算机都是客户端,可以说数据库时C/S架构的软件。

数据库分类

  数据库大致分为关系型数据库和非关系型数据库。

  区别(简单理解):
    关系型数据库有表结构,非关系型数据库是以key - value存储的,没有表结构。

  常见数据库:

    • 关系型数据库(又称RDBMS:Relational Database Management System)

      • MySQL - 主要用于大型门户,例如搜狗、新浪等,它主要的优势就是开放源代码
        因为开放源代码这个数据库是免费的,他现在是甲骨文公司的产品。

      • Oracle - 主要用于银行、铁路、飞机场等。该数据库功能强大,软件费用高。
        也是甲骨文公司的产品。

      • PostgreSQL - PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统(RDBMS)。

      • MariaDB - SUN被甲骨文收购后,MySQL 的原创人员有拉出另外一个分支,
        命名MariaDB 。该数据库被维基百科,Facebook 甚至 Google
        等技术巨头使用。 MariaDB 是一种可为 MySQL 提供插件替换功能的
        数据库服务器。开发人员的首要关注点是安全性,在每个版本发布时,
        开发人员还会合并所有 MySQL 的安全修补程序,
        并在需要时对其进行增强。

      • sqlite

      • sql server

      • db2

    • 非关系型数据库

      • mongodb - MongoDB 是一个高性能,开源,无模式的文档型数据库,是当前noSql数据库产品中最热门的一种。它在许多场景下用于替代传统的关系型数据库或键值对存储方式,MongoDB是用C++开发。

      • redis - redis是一款内存高速缓存数据库。是完全开源免费的,用C语言编写的,遵守BSD协议,高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库。

      • memcache

 

MySQL安装

  下载地址: https://downloads.mysql.com/archives/community/

  下载对应版本后解压到文件夹

  将文件夹内的bin目录添加到环境变量:

  【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --》 【将MySQL的bin目录路径追加到变值值中,用 ; 分割】

  目录说明:

    bin文件夹
      mysqld.exe 服务端
      mysql.exe 客服端
    data文件夹
      存储使用过程中需要保存的数据
    my-default.ini
      配置文件
    redadme
      说明文件

  系统服务

    为了学习方便需要将服务端和客户端都在本地启动,公司服务端会专门跑在一台服务器上,所有人基于网络连接服务端操作。

    为了不必每次开机都重新启动服务端,可以将服务端制作成系统服务,开机自动启动

      1.查看当前计算机系统服务列表

        services.msc

      2.以管理员身份运行cmd并制作系统服务

        mysqld --install  # 仅仅是添加到了系统服务 第一次需要手动启动

      3.启动服务

        方式1:鼠标右键选择启动即可
        方式2:命令行方式启动
          net start mysql

      停止服务
        net stop mysql

      移除系统服务
        mysqld --remove

 

  登录命令

      1.游客模式登陆

      mysql 

      2.账号登录(本地使用)
      mysql -u用户名 -p密码 

      第一次登录 root用户没有密码 直接连续回车即可

       3.完整命令
      mysql -hIP地址 -P端口号 -u用户名 -p密码

      常见软件的默认端口号 MySQL 3306 redis 6379 mongodb 27017 django 8000 flask 5000

  密码相关

    设置密码:

      方式1:直接在cmd窗口内使用mysqladmin命令
        mysqladmin -uroot -p原密码 password 新密码
      eg:
        mysqladmin -uroot -p password 123
        mysqladmin -uroot -p123 password 666
      方式2:直接在登录状态下修改当前登录用户的密码
        set password=PASSWORD('密码')

    忘记密码:

      1.关闭服务端
      2.以跳过授权表的方式重新启动服务端
        只需要提供用户名就可以登录
        mysqld --skip-grant-tables
      3.以管理员身份登录
        mysql -uroot -p
      4.修改管理员用户密码
        update mysql.user set password=password(123) where user="root" and host="localhost";
      5.关闭服务端再正常启动
        ctrl + C
        net start mysql
      6.使用修改之后的密码登录

  字符编码

    查看MySQL内部默认的编码情况
      命令:\s

    修改配置文件(默认为mydefault.ini)    

      1.拷贝默认的配置文件并且重新命名为my.ini
      2.拷贝固定的配置信息
        [mysqld]
        character-set-server=utf8
        collation-server=utf8_general_ci
        [client]
        default-character-set=utf8
        [mysql]
        default-character-set=utf8
      3.重启MySQL服务端

      为了方便可以将用户名和密码也加在配置文件中,以后登录就不用输了

        user="root"

        password=123456

 

这篇关于数据库理论和安装MySQL的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!