数据库MySQL基本介绍安装使用及文件导入导出
1.数据库(data base)
1.1 简述
把文件存储在一台电脑上(服务器),其他电脑用户可以通过账号密码登陆,通过网络去访问这台电脑上的文件,但是由于每个人的数据是不同的,所以你只能通过自己的账号密码访问到自己的相关数据,并进行一系列操作。
简单点说,比如你玩网络游戏的时候,每次要登录才能将进入你的游戏里,你买的装备都在里面存着,可以对装备进行升级,也可以销毁,但是你无法操作其他用户的装备,即数据。而你这些数据全部都在服务器这边存着,每次只能通过网络访问,进行一系列操作
1.2 相关名词解释
数据(Data):
描述事物的相关记录,这些记录通过数字化处理存入电脑,即成了网络意义上的数据
数据库(DataBase):
简称DB,存放数据的一个仓库,它在计算机存储设备中以一定的数据模型组织存储,冗余率低,独立性和可扩展性好
数据库管理系统(DataBase Management System):
简称DBMS,mysql就是一个数据库管理系统,
常见的DBMS:
mysql 主要用于大型门户,例如搜狗、新浪等,它主要的优势就是开放源代码,因为开放源代码这个数据库是免费的,他现在是甲骨文公司的产品。
oracle 主要用于银行、铁路、飞机场等。该数据库功能强大,软件费用高。也是甲骨文公司的产品。
sql server 是微软公司的产品,主要应用于大中型企业,如联想、方正等。
2.初始命令操作
mysql数据库:基于socket编写的c/s架构软件,包含socket客户端以及服务端
mysql.exe client端可执行文件
mysqld.exe server端可执行文件
2.1关于安装
①下载网址,下载下zip文件,在当前盘解压(这里演示D盘)
https://dev.mysql.com/downloads/mysql/
②初始化操作(在目录下会自动生成一个data文件)
mysqld --initialize-insecure
③添加环境变量(和安装Python环境变量方法一样)
④以管理员身份在cmd下运行:
mysqld --install
⑤开启mysql服务端
net start mysql
⑥关闭mysql服务端
net stop mysql
⑦启动成功
上述方式操作相对简便,只用在一个窗口操作即可,常规操作从④也可以这么写:
④开启server端服务(在cmd下启动服务端,此时没有啥反应,但是已经悬挂,即已经开启服务端,等待接收指令)
mysqld
⑤重新打开一个cmd窗口,打开一个client端,输入命令,当前登录的是root用户,默认没有密码
mysql -uroot -p
⑥启动成功
2.2配置文件的下载
安装配置文件主要是为了后续的操作方便,比如默认端口输入输出字符全是utf-8类型等
安装方式:在下载的文件目录下新建一个my.ini数据库配置文件,将下面内容粘贴进去并保存
[mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] # 设置mysql的安装目录 basedir=D:mysql-5.7.22-winx64 # 设置mysql数据库的数据的存放目录,必须是data datadir=D:mysql-5.7.22-winx64data # mysql端口 port=3306 # 字符集 default-storage-engine=INNODB character_set_server=utf8 collation-server=utf8_general_ci skip-grant-tables sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
# 配制完后输入s 查看配制(注意,这在django中相当的重要)
2.3相关指令操作
查看当前登录账号:
在终端输入mysql,进入后输入select user(); 注意分号
当前默认账号ODBC@localhost
切换root账户:执行命令,mysql -uroot ,进入后直接enter键(密码为空),再输入select user();
查看mysqld进程
tasklist|fiindstr mysql
如
杀死mysqld进程
taskkill /F /PID '进程号'
如
修改密码以及破解密码
3.mysql语句
3.1文件夹的操作(数据库的操作)
增
create database db2 charset utf8;
查
查看所有数据库
show databases;
查看当前新创建的数据
show create database db2;
改
alter database db2 charset gbk;
删
drop database db2;
3.2文件的操作(表的操作)
先选定文件夹,再对文件进行操作,我提前又创建了一个db1文件
use db1; #切换文件夹
select database(); #查看当前所在文件夹
增
create table t1( id int, name char(20), age char(20) );
查
查看当前的t1表
show create table t1;
查看所有的表
show tables;
查看当前表中详细信息
desc t1;
改
# 修改name下的char值 alter table t1 modify name char(6); # 改变name为大写的NAME,char值也可以顺带修改 alter table t1 change name NAMA char(7);
删
drop table t1;
3.3数据操作(表中的记录)
增
insert t1(id,name,age) values(1,'luffy',18),(2,'konan',12);
查
# 查询id这一列
select id from t1;
# 查询id,name两列
select id,name from t1;
# 查询表中所有信息
select * from t1;
改
# 整列修改 update t1 set name='zoro'; #指定id修改 update t1 set name='zoro' where id=1;
删
# 指定id删除 delete id from t1 where id=1; # 清空操作 delete from t1; truncate t1; # 推荐使用
4.文件导入导出简单操作
导出现有数据库数据:
- mysqldump -u用户名 -p密码 数据库名称 >导出文件路径 # 结构+数据
- mysqldump -u用户名 -p密码 -d 数据库名称 >导出文件路径 # 结构
导入现有数据库数据:
- mysqldump -uroot -p密码 数据库名称 < 文件路径