MySQL数据库的安装和配置

Wesley13
• 阅读 438

MySQL数据库的安装和配置

1、数据库概念

​ 数据库就是保存数据的地方,在没有数据库之前,我们是这样保存数据的: ​ 1.随意的存到了一个文件中 数据格式也是千差万别的 ​ 2.软件开发目录规范 ​ 规定了数据存放的位置 ps:数据都是保存在本地的

2、数据库如何保存数据的?

··将保存数据的部分 存到一个公共的地方 所有的用户涉及到数据相关 都必须来这个公共地方查找

3、数据库之MySQL

​ 本质就是一款基于网络通信的应用软件 ​ 任何基于网络通信的软件 底层都是socket

​ 服务端 -基于socket通信 -收发消息 -SQL语句(是一个公共的标准) ​ 客户端 -基于socket通信 -收发消息 -SQL语句

​ ps:MySQL不单单支持MySQL的客户端来操作 也支持其他编程语言直接操作 ​ python java c++ php语法都不一样

4、其他数据库

DBMS:数据库管理系统

关系型数据库(MySQL) 数据与数据之间可以有关联和限制的 关系型数据库通常都是表结构,也就意味着你在用关系型数据库的时候 第一步就是确定表结构

​ 字段有特定的类型 ​ 存名字用字符串 ​ 存密码用数字 ​ 存生日用日期

​ 比如:MySQL, oracle, sqlite, db2, sql server

非关系型数据库 通常都是以k,v键值的形式 存储数据 redis,mongodb(文档型数据库 非常接近关系型的非关系型数据),memcache

MySQL是关系型数据库!因此第一步,确定表结构;第二步确定字段的类型。

MySQL其实可以把它看成一款支持远程操作文件的软件 库 >>> 文件夹 表 >>> 文件 记录 >>> 文件内一行行的数据叫做一条条的记录

表头 就是表格的第一行数据 字段 字段名+字段类型

5、安装MySQL步骤:

安装MySQL 在IT行业 不要轻易的尝试最新版本的软件 下载之后 是将MySQL的服务端和客户端都下载了下来 解压 查看文件目录 服务端 mysqld 客户端 mysql 启动mysqld 1.切换到bin目录下 2.执行mysqld ps:做前期MySQL配置的时候 终端建议你用管理员身份运行 windows+r启动的是普通用户 mysql在初始登陆的时候 是没有密码的 直接回车即可 mysql中的sql语句 是以分号结束的 不敲分号 默认你没有输入完 客户端还会让你继续输入 客户端登陆 mysql -h 127.0.0.1 -P 3306 -uroot -p 可以简写 mysql -uroot -p 如果不输入用户名和密码 默认是访客模式登陆 所能用到的功能很少 客户端退出登陆 exit; quit; 查看所有的数据库 show databases; 查看某个进程(在退出客户端,exit后查看进程) tasklist |findstr 名称 杀死进程 taskkill /F /PID 进程号

6、制作环境变量

使得电脑系统启动,mysqld的服务端就自动启动,不用再手动打开服务端了。 1、将启动文件所在的路径添加到系统的环境变量中(bin目录) 2、重新启动mysql服务端和客户端 3、管理员运行客户端,执行一下命令: ​ 3.1在cmd命令行转到bin目录下 ​ 3.2 mysqld --install ​ 3.3 net start mysql

7、修改登录密码:

​ 第一次登录无密码(设置密码): ​ mysqladmin -uroot -p password 123 ​ 有密码的情况下(修改密码): ​ mysqladmin -uroot -p123 password 123456 ​ 当命令输入错误的时候 可以用\c取消前面的命令 cancel

8、密码忘记(破解)

1、现将已经启动的服务端停掉 查看某个进程(在退出客户端,exit后查看进程) tasklist |findstr mysqld(这个要退出才能查看!) 杀死进程 taskkill /F /PID 进程号 2.跳过服务端授权表 mysqld --skip-grant-tables 启动服务端 跳过服务端授权表 3.修改管理员用户对应的密码(现在重新打开另一个cmd) update mysql.user set password=password(123) where user='root' and host='localhost';MySQL数据库的安装和配置

4.关闭当前服务端 重新以校验用户名密码的方式启动(先退出客户端exit,然后退出服务端,再重启服务端net start mysql) 5.正常以用户名密码的方式 连接mysql服务端

9、配置文件

​ \s查看 mysql服务端简单配置 ​ 通常情况下配置文件的后缀都是ini结尾 ​ mysql自带的配置文件不要修改 ​ 但是你可以新建一个配置文件 my.ini ​ mysql服务端在启动就会自动加载你的my.ini配置文件内的配置 修改了配置文件一定要重启服务端 MySQL数据库的安装和配置

10、数据库的基本操作

​ 库 类似于文件夹 ​ 增 ​ create database db1; ​ 查 ​ show databases; 查所有 ​ show create database db1; 查单个 ​ 改 ​ alter database db1 charset='gbk'; 修改编码 ​ 删 ​ drop database db1; 删库 ​ 表 ​ 在创建表的时候 需要先指定库 ​ 首先输入命令,指定库: use 库名 ​ 查看当前虽在的库: select database() ​ 增 ​ create table userinfo(id int,name char); ​ 查 ​ show tables; 查看某个库下面的所有的表 ​ show create table userinfo;第二种查看表的方式 ​ desc userinfo; <==> describe userinfo; ​ 改 ​ alter table userinfo modify name char(32); ​ 删 ​ drop table userinfo; ​ 记录 ​ 先创建一个库或者指定一个已经存在的库 ​ 切换到该库下 创建表 ​ 然后再操作记录 ​ create database db1; ​ create table userinfo(id int,name char(32),password int); ​ 增 ​ insert into userinfo values(1,'jason',123); 插入单条数据 ​ insert into userinfo values(1,'jason',123),(2,'egon',123),(3,'tank',123); 插入多条数据 ​ 查 ​ select * from userinfo; 查询所有的字段信息 ​ select name from userinfo; 查询指定字段信息 ​ select id,name from userinfo where id=1 or name=tank; 带有筛选条件的字段信息 ​ 改 ​ update userinfo set name='kevin' where id=1; 修改数据的一个字段信息 ​ update userinfo set name='jason',password=666 where id=1; 修改数据的多个字段 ​ 删 ​ delete from userinfo where id =1; 指定删符合条件的数据 ​ delete from userinfo; 将表中的数据全部删除

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
2年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
2年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Easter79 Easter79
2年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
2年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
为什么mysql不推荐使用雪花ID作为主键
作者:毛辰飞背景在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这