当前位置: 移动技术网 > IT编程>数据库>Mysql > 一、初识数据库

一、初识数据库

2019年11月02日  | 移动技术网IT编程  | 我要评论

目录

1. 数据库是什么

存数据的仓库

2. 为什么使用数据库

  1. 管理大量数据
  2. 支持并发操作
  3. 支持高级的操作,比如分组,链表等

3. 数据库的分类

1. 关系型数据库

表结构存储,对每一列的数据的类型会有约束,数据存在硬盘中

mysql(免费,企业用的多),maridb,sqlserver(大学、政府),oracle(金融公司,阿里),sqlite(自己玩的小型数据库)

2. 非关系型数据库

key-value存储,对于数据没有约束,数据存在内存中

memcache(十年前的产品,未能解决断电即消失的问题),mongodb(文档型数据库,爬虫),redis(微博)

4. mysql的架构

  • 类似于socket的客户端和服务端

  • 流程
    1. mysql服务端先启动,监听在某一个特定的端口(3306)
    2. mysql客户端连接服务端
    3. mysql客户端就可以发送相关的操作命令,去操作服务端存储的数据

5. mysql的安装

1. windows的安装

  1. 下载:mysql community server 5.7.16
  2. 解压
    如果想要让mysql安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:e:\mysql-5.7.16-winx64
  3. 添加环境变量
    【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为path 的一行,双击】 --> 【将mysql的bin目录路径追加到变值值中,用 ; 分割】
  4. 初始化
    mysqld --initialize-insecure :创建data目录, 初始化的数据
  5. 启动mysql服务
    mysqld:启动mysql服务
  6. 启动mysql客户端并连接mysql服务
    mysql -u root -p: 连接mysql服务器

2. windows服务

上一步可以运行mysql,但不够彻底,执行mysql执行服务端会阻塞住,因此要将mysql添加到windows服务

  1. 添加windows服务

    cmd运行命令:"e:\mysql-5.7.16-winx64\bin\mysqld" --install

    注意:--install前,必须用mysql启动命令的绝对路径

  2. 启动mysql服务

    cmd运行命令:net start mysql

  3. 关闭mysql服务

    cmd运行命令:net stop mysql

  4. 移除windows服务

    cmd运行命令:"e:\mysql-5.7.16-winx64\bin\mysqld" --remove

    注意:这里的路径也必须是绝对路径

3. 设置密码

mysql -u root -p: 管理员root用户 ,默认没有密码

  1. -u:user 用户名
  2. -p:password 密码
  3. -h:host 主机名或ip mysql -uroot -p -h 192.168.1.10
  4. -p:port 默认是3306
  • 管理员登录的情况下:

    set password = password('密码'); # 给当前数据库设置密码

  • 没有登录的情况下:

    mysqladmin -uroot password "123" :设置初始密码 由于原密码为空,因此-p可以不写

    mysqladmin -uroot -p "原密码" password "新密码":修改mysql密码,因为已经有密码了,所以必须输入原密码才能设置新密

4. 忘记密码

  1. 关闭mysqld的windows服务
  2. cmd中执行:mysqld --skip-grant-tables(不用密码就可以登录,绕过密码验证的权限)
  3. cmd中执行:mysql
  4. cmd中执行:update mysql.user set authentication_string=password('新密码')where user = 'root';
  5. cmd中执行:flush privileges;
  6. cmd中执行:tasklist | findstr mysqldtaskkill -f /pid 进程号
  7. 重新启动

5. 新建账号

mysql> create user 'nick'@'192.168.10.%'   identified by '123';# 指示网段
mysql> create user 'nick'@'192.168.10.5'   # 指示某机器可以连接
mysql> create user 'nick'@'%'                    #指示所有机器都可以连接  
mysql> show grants for 'nick'@'192.168.10.5';查看某个用户的权限 
# 远程登陆
$ mysql -uroot -p123 -h 192.168.10.3

# 给账号授权
mysql> grant all on *.* to 'nick'@'%';
mysql> flush privileges;    # 刷新使授权立即生效

# 创建账号并授权
mysql> grant all on *.* to 'nick'@'%' identified by '123' 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网