一.mysql概述 \s 查看当前自己的信息 1.mysql就是用于管理我们的文件的一个软件; 2.mysql有两个软件: 服务器软件: socket服务端 本地文件操作 解析指令(mysql语句) 客户端软件: socket客户端 发送指令 解析指令(mysql语句) 3.什么是数据(data) 描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字、图片,图像、声音、语言等,数据由多种表现形式, 它们都可以经过数字化后存入计算机 4.什么是数据库(DataBase 简称DB) 数据库即存放数据的仓库,只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的 5.什么是数据库管理系统(DataBase Management System) 在了解了Data与DB的概念后,如何科学地组织和存储数据,如何高效获取和维护数据成了关键,这就用到了一个系统软件---数据库管理系统 如MySQL、Oracle、SQLite、Access、MS SQL Server mysql主要用于大型门户,例如搜狗、新浪等,它主要的优势就是开放源代码,因为开放源代码这个数据库是免费的,他现在是甲骨 文公司的产品。 oracle主要用于银行、铁路、飞机场等。该数据库功能强大,软件费用高。也是甲骨文公司的产品 sql server是微软公司的产品,主要应用于大中型企业,如联想、方正等。 6.数据库服务器 数据管理系统 数据库 表与记录的关系 记录:1 xxx 324245234 22(多个字段的信息组成一条记录,即文件中的一行内容 表:student, school,(文件) 数据库:文件夹 数据库管理系统:如mysql(是一个软件) 数据库服务器:一台计算机 数据库服务器:运行数据库管理软件 数据库管理软件:管理-数据库 数据库:即文件夹,用来组织文件/表 表:即文件,用来存放多行内容/多条记录 二.MySql安装和基本管理 1.mysql的安装和启动 MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据 库管理系统) 应用软件之一。 2.mysql是什么? mysql就是一个基于socket编写的C/S架构的软件 3.数据库管理软件分类 (1)关系型:如sqllite,db2,oracle,access,sql server,MySQL,注意:sql语句通用 (2)非关系型:mongodb,redis,memcache 关系型数据库需要有表结构 非关系型数据库是key-value存储的,没有表结构. 4.mysql的下载安装 想要使用MySQL来存储并保存数据,则需要做几件事情: a. 安装MySQL服务端 b. 安装MySQL客户端 b. 【客户端】连接【服务端】 c. 【客户端】发送命令给【服务端MySQL】服务的接受命令并执行相应操作(增删改查等) 下载地址:https://dev.mysql.com/downloads/mysql/ 5. window版本 (1)解压 如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录, (2)添加环境变量 【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》将文件路径添加进去 (3)初始化 命令: mysqld --initialize-insecure (4).启动mysql服务 命令:mysqld 启动MySql服务 (5).启动mysql客户端并连接mysql服务端(新开一个cmd窗口) 命令:mysql -u root -p 连接MySQL服务器 6.MySQL服务制作成windows服务 (1)背景因为在执行【mysqd】启动MySQL服务器时,当前终端会被hang住,那么做一下设置即可解决此问题,即将MySQL服务制作成windows服务 (2)注意: --install前,必须用mysql启动命令的绝对路径 # 制作MySQL的Windows服务,在终端执行此命令: "c:\mysql-5.6.40-winx64\bin\mysqld" --install # 移除MySQL的Windows服务,在终端执行此命令: "c:\mysql-5.7.16-winx64\bin\mysqld" --remove 注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令: # 启动MySQL服务 net start mysql # 关闭MySQL服务 net stop mysql 相关命令: 查看所有的数据库: show database 使用数据库 use 数据库的名字 查看所有的show tables; 7.设置初始密码 在终端执行 mysqladmin -uroot -p password "123"(如下图所示) 重新登录mysql即生效
修改初始密码: (1)在终端执行 mysqladmin -uroot -p"123" password "456" 将123 修改为456; (2)mysql -uroot -p456 登录 8. 破解密码 1.以管理员身份打开cmd 2.停掉mysql服务端; net stop mysql 3.执行如下命令跳过授权表 mysqld --skip-grant-tables 4.客户端连接服务端 新开一个cmd 并连接 mysql -uroot -p 5.现在可以任意的更改密码,执行如下命令 update mysql.user set authentication_string =password('') where User='root'; 6.刷新权限,执行命令 flush privileges; 7.退出mysql。执行命令:exit 8.让用户去加载权限,以管理员身份进入cmd,查看当前mysql进程 9.杀死当前的进程,执行如下命令; 10.再次执行如下操作,还原 9.统一字符编码 1.在C:\mysql-5.7.23-winx64\mysql-5.7.23-winx64当前的目录下 新建一个my.int [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] #设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=C:\mysql-5.7.23-winx64\mysql-5.7.23-winx64 # 这个目录一定是自己电脑上的安装mysql目录 # 设置mysql数据库的数据的存放目录 datadir=C:\mysql-5.7.23-winx64\mysql-5.7.23-winx64\data # 这个目录一定是自己电脑上的安装mysql数据目录 # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB 2.net stop mysql 再开启 让my.ini文件配置生效 net start mysql 3.mysql -uroot -p 执行 \s; 查看数据库配置 Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 三.初始mysql语句 1.操作文件夹(库) (1)增 create database db1 (2)查 show create database db1 查所有的数据库 show databases (3)改 alter database db1 (4)删 drop database db1; 2.操作文件(表) use db1 切换文件夹 select database() 查看当前所在文件夹 (1)增 create table t1(id int,name char) (2)查 #查看当前的这张t1表 show create table t1; # 查看所有的表 show tables; # 查看表的详细信息 desc t1; (3)改 # modify修改的意思 alter table t1 modify name char(6); # 改变name为大写的NAME alter table t1 change name NAMA char(7); (4)删 # 删除表 drop table t1; 3.操作文件内容(记录) (1)增 插入一条数据,规定id,name数据 insert t1(id,name) values(1,"mjj01"),(2,"mjj02"),(3,"mjj03"); (2)查 select id from db1.t1; select id,name from db1.t1; select * from db1.t1; (3)改 update db1.t1 set name='zhangsan'; update db1.t1 set name='alex' where id=2; (4)删 delete from t1; delete from t1 where id=2;