MySQL 安装以及基本操作

本贴最后更新于 1860 天前,其中的信息可能已经东海扬尘

MySQL 数据库开发

基础概念

1.数据:描述事物特征的符号,属性

2.数据库的概念:管理计算机中的数据的仓库

2.记录: 一系列典型的特征

3.表:文件

4.库:文件夹

5.数据库管理软件:MySQL oracle,db2,sqlserver

6.数据库服务器:运行数据库管理软件的计算机

7.mysql 是一个基于 socket 编写的 C/S 架构的软件

数据库管理软件

分类

关系型:sqllite db2,oracle sqlserver. MySQL

就是一个个表结构组成的,表结构就是由一些字段(属性)+ 约束条件 + 数据类型组成的

非关系型:mongdb redis

没有表的结构,

存储方式

关系型:二维表的形式

非关系型:key:value

安装

1.linux 版本

2.windows 版本

安装方式:图形化指导安装,命令形式安装

选择版本:5.5 ,5.6,尽量不安装 8 版本的,坑

基本是点默认。

如果最后配置安装的时候,开启启动服务停留了很久,
image.png

出现的原因是:之前安装的 mysql 的配置文件没有删除干净以及 mysql 服务注册表没有删除,
解决办法
mysql 数据配置文件默认在 C:\ProgramData\MySQL 将这个删除干净,包括空文件也要删除

注册表的事情,就不要乱动了。。后面再试试重新安装一个 MySQL,
步骤只到安装完成,后面配置部分就不要点了,我们手动配置系统服务

进入 cmd
输入 mysqld --install MySQL55 这是生成一个系统服务名字叫 MySQL55
然后 net start MySQL55 开启 MySQL 服务
以 root 登录 MySQL 直接回车进入无需密码,通过 mysql.user 表来添加密码

mysql 启动登录

1.win+R 打开搜索框 输入 cmd (这只是普通用户登录打开 cmd 与上述 cmd 打开方式不同)

2.然后输入 mysql

3.然后输入密码 (root 用户默认没密码直接回车)

密码设置

一开始没有设置密码所以需要设置

mysql 密码的设置

建议第二种(第一种莫名其妙有时候不行。。。导致结果就是你得重装)

第一种:不用登录进mysql
	win+Q 搜索cmd 选中命令提示符右击管理员登录。

	输入指令:mysqladmin -uroot -p password  123456

	上述命令参数说明:-u 指用户 -p指密码

	上述指令意思:以root用户登录 设置密码为123456




第二种:以root用户登录mysql

	先登录mysql,修改mysql数据库中的表user的用户的密码

	指令:update user set password=password('123456') where user="root";

	指令解释:修改表设置user为root的记录的密码为123456

修改密码

(建议第二种方法)

第一种不登陆mysql:

	修改密码指令:mysqladmin -uroot -p123456 password  123abc;

	上述指令意思:以root用户登录将密码123456修改为123abc


第二种登录mysql:

	方法:修改mysql数据库中表user

	指令:update user set password=password('newmima') where user="root";

如果密码忘记怎么办?

WIndows 下

1.彻底删除 mysql(暴力)

卸载 mysql~~~~

2.绕开权限表登录(合理)

绕开权限表登录,然后进入到 mysql 之后,设置密码

(1)绕开权限表:

管理员进入 cmd:

先停止当前 mysql 服务输入指令 net stop MySQL

然后绕过权限表:mysqld --skip -grant-tables

(2)之后打开一个新的 cmd 管理员身份登录 mysql

输入指令: mysql 回车就能直接登录进入 mysql

输入指令通过修改数据库中的表设置密码:(登录进 mysql 后每一条指令输完后要加分号,表示该指令结尾)

update mysql.user set password=password('123456') where root and host="localhost";

为什么不直接 password=”123456“呢 而用 password=password('123456')这是因为放入到数据库中的密码不能是明文的,而是要加密的。所以使用他自带的函数 password()

刷新权限:flush privileges;

(3)杀死绕开权限表的进程,这样我们才能以正常方式登录

管理员身份进入 cmd

输入指令:tasklist |findstr mysql 查询 mysql 进程

杀死进程输入指令:taskkill /F /pid 32312

上述指令参数说明: /F 表示强制 /pid 表示进程号 后面 32312 是 tasklist |findstr mysql 查询得到的进程号

(4)启动 mysql 服务

进入 cmd 输入:net start MySQL

(5)mysql -uroot -p 再输入密码就可以进入了

查看数据库文件存放的物理位置

show global variables like "%datadir%";

sql(Structed query language)结构化查询语言

分类

1.DDL 数据定义语言

操作对象:数据库,表,视图等

2.DCL 数据控制语言

操作对象: 表内的内容
操作:增 删 修改

3.DML 数据操纵语言

对数据库进行一些事务管理等:

比如授权。

4.DQL 数据查询语言

操作对象:数据。
操作:查询

数据的 CURD 操作

操作数据库(文件夹)

(记住几个关键字就可以了)

  • 增(Create)

    CREATE database db1 charset utf8;

  • 删除(DELETE)

    DROP database db1;

  • 改(ALTER)

    ALTER datbase charset gbk;

  • 查(Retrieve)

    SHOW databases;(显示数据库有哪些)

    SHOW CREATE database db1;(查看当前创建的数据库 db1)

操作表(文件)

选择数据库

use db1;

  • 增加(CREATE)

    CREATE table tb1(
    sid int unsigned not null primary key auto_increment,
    name varchar(20) not null,
    age tinyint not null
    );

  • 删除(DELETE)

    DROP table tb1;


  • 修改表的字段名: ALTER table change id sid int unsigned NOT NULL PRIMARY KEY;

  • 查(RETRIEVE)

    SHOW tables;//显示所有的表

    SHOW create table tb1;
    DESC tb1;

操作数据

  • INSERT INTO tb(id,name)values(1,'zc'),(2,'ls');

  • DELETE FROM tb WHERE id=1;

  • UPDATE *FROM tB WHERE id=1;

  • SELECT *FROM tb ;//查询整个表内的所有数据

    存储引擎的介绍

    什么是存储引擎?

    create table t1(id int)engine=innnodb;

    就是控制管理表的类型,不同的引擎对于表的类型是有不同定义的,存储引擎帮助管理存储在数据库中的数据

    数据操作

    约束

    概念:对数据进行一些约束,保证数据的正确性和完整性

    有四类:

    1。主键约束 PRIMARY KEY

    2.非空约束 NOT NULL

    3.唯一约束 UNIQUE

    4.外键约束 FOREIGN KEY

    _

  • 数据库

    据说 99% 的性能瓶颈都在数据库。

    343 引用 • 719 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...