MySQL数据库基础讲解

简介

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言(SQL)进行数据库管理。
MySQL是开放源代码的,因此任何人都可以在General Public License的许可证之下下载并根据个性化的需要对其进行修改。
MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。

数据库安装教程

Mysql数据库安装语句

1.sudo apt-get install mysql-server
2.sudo apt-get install mysql-client 
3.sudo apt-get install libmysqlclient-dev

查询mysql是否安装成功:

sudo netstat -tap | grep mysql 
或者
sudo ss -tap | grep mysql  

基础知识

一、数据库连接方式

格式: mysql -h 主机地址 -u 用户名 -p 用户密码

找到mysql的安装目录,一般可以直接键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好mysql,root是没有密码的,故直接回车即可进入到MySQL中,MySQL的提示符是:mysql>

二、MySQL数据库启停

#启动数据库
service mysql start 
#停止数据库
service mysql stop
重启数据库
service mysql restart 

三、MySQL数据库密码修改

1、更改密码

mysql -uroot -p
Enter password: *****
mysql> use mysql; #选择数据库
Database changed
mysql> UPDATE user SET password=PASSWORD("新密码") WHERE user='用户名';
#update user set authentication_string=password("新密码") where user='用户名';
mysql> FLUSH PRIVILEGES; #flush privileges
mysql> quit;

2、更改用户名

mysql -uroot -p 
Enter password: *****
mysql> use mysql; #选择数据库
Database changed
mysql> update user set user="新用户名" where user="root"; #将用户名为root的用户的用户名改为新用户名
mysql> flush privileges; #刷新权限
mysql>exit;

四、数据库备份

1、mysqldump工具备份

mysqldump -u root -h host -p dbname > backup.sql
常见选项作用
-u用户名
-p密码
-P端口号,默认为3306
-all-databases,-A备份所有数据库
-databases,-B用于备份多个数据库,如果没有该选项,mysqldump把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldump把每一个名字都当作为数据库名。
-d只导出数据库的表结构
-t只导出数据库的数据
–quick,-q快速导出
–xml,-X导出为xml文件

常见用法

#1、备份全部数据库的数据和结构(-A)
mysqldump -uroot -p123456 -A > backup.sql
#2、备份全部数据库的结构(-d)
mysqldump -uroot -p123456 -P3306 -A -d > backup.sql 
#3、备份全部数据库的数据(-t)
mysqldump -uroot -p123456 -P3306 -A -t > backup.sql
#4、备份单个数据库的数据和结构(database为数据库名)
mysqldump -uroot -p123456 -P3306 database > backup.sql
#5、备份单个数据库的数据(-d)
mysqldump -uroot -p123456 -P3306 database -d > backup.sql
#6、备份单个数据库数据(-t)
mysqldump -uroot -p123456 -P3306 database -t > backup.sql
#7、备份多个表的结构和数据(table1,table2为表名)
mysqldump -uroot -p123456 -P3306 database table1 table2 > backup.sql
#8、一次备份多个数据库
mysqldump -uroot -p123456 --databases db1 db2 > backup.sql

五、 数据库还原

1、系统命令行

mysqldump -uroot -p test < backup.sql #绝对路径
Enter password:123456
Test:需要备份的数据库
Test:备份的名称

2、source方法

mysql> use db
mysql> source backup.sql #绝对路径

数据库增删改查

1、操作数据库

(1)对数据库(文件夹):进行增加操作
create database 库名;
例如:create database test;
查询库:show databases;

在这里插入图片描述

(2)对数据库(文件夹):进行删除操作
drop database 库名;
例如:drop database test;

在这里插入图片描述

(3)对数据库(文件夹):进行改操作
#更改数据库字符集
alter database 库名 charset 编码集;
例如: alter database test charset gbk;

在这里插入图片描述

(4)对数据库(文件夹):进行查操作
查看建库信息:show create database 库名;
例如:show create database test;

在这里插入图片描述
在这里插入图片描述

2、操作表

(1)对表(文件):进行增加操作
create table user (id int,name char(10);
查询:show tables;

在这里插入图片描述

(2)对表(文件):进行删除操作
drop table 表名;
例如:drop table user;
show tables;

在这里插入图片描述

(3)对表(文件):进行改操作
alter table 表名 modify 字段名 数据类型;

在这里插入图片描述
在这里插入图片描述

#更改字段名和数据类型change
alter table 表名 change 字段名 新字段名 数据类型;

在这里插入图片描述

#更改表名rename
alter table 表名 rename 新表名;

在这里插入图片描述

#增加字段add
alter table 表名 add 新字段名 数据类型;

在这里插入图片描述

#删除字段drop
alter table 表名 drop 字段名;

在这里插入图片描述

(4)对表(文件):进行查操作
#查看建表语句:
show create table 表名;

在这里插入图片描述

#查看表结构
desc 表名;

在这里插入图片描述

3、操作记录

(1)对记录(文件内容):进行增加操作:
INSERT INTO table_name(可指定字段,也可以不指定字段但是要与之对应) values('value1''value2''value3');

在这里插入图片描述

(2)对记录(文件内容):进行删除操作
#delete 清除数据但是保留id号
delete from 表名;(此时若是在insert id会接续之前的id号往下排,也可以自己指定id)
例如 delete from users;
查询 select * from users;
结果 Empty set (0.00 sec)
插入 insert into users values('null','admin','admin');
再次查询 select * from users;
# turncate 清除数据不保留id号

在这里插入图片描述
在这里插入图片描述

(3)对记录(文件内容):进行改操作:
update users set username="test" where id = 1;
update table 表名 set 字段=where 条件;(要加条件否则字段的值会全部改变)
or
update 库名.表名 set 字段=where 条件;
update users.name set name='test' where id = 1;

在这里插入图片描述
在这里插入图片描述

(4)对记录(文件内容):进行查操作:
select * from table_name;
select * from db_name.table_name;

在这里插入图片描述
至此,MySQL数据库基础讲解就到这里了,写作不易,还望支持。
2020-03-03
ro4lsc

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 撸撸猫 设计师:设计师小姐姐 返回首页