第二十章 数据库操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二十章 数据库操作相关的知识,希望对你有一定的参考价值。
一、数据库介绍
数据库:
sql server : 微软
oracle :甲骨文 收费 闭源
mysql :甲骨文 免费
SUN公司 小型机unix java mysql marrydb
其中MariaDB是MySQL的分支,也是它的进阶产品,未来很有可能替代MySQL。
Fackbook 阿里 : 去IOE产品(IBM ORACLE EMC2(存储柜))拿自己的钱给别人交学费,不必过度依赖传统的IOE架构
阿里:定制系统 服务器 数据库 定制
二、MYRIADB介绍
mysql:
简单易用、免费、查询速度快、安全可靠
独立的服务器,跟linux本身没有关联(包括命令、管理、远程管理等)
数据库结构: 数据库、表、字段、值
(表格、列/字段、1条记录/1行)
MariaDB有许多的新选项、扩展,存储引擎和bug修复,而MySQL是没有的
安装myriadb服务器:(在光盘上有rpm包)
yum install mariadb-server mariadb
============================
数据库配置文件:
设置客户端:
vim /etc/my.cnf.d/mysql-clients.cnf
[mysql]
default-character-set=utf8
设置服务端:
vim /etc/my.cnf.d/server.cnf
[mysqld]
init_connect=‘SET collation_connection = utf8_general_ci‘
init_connect=‘SET NAMES utf8‘
character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake
开启慢查询
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1
开启mariadb:
Systemctl start mariadb
查看服务状态:
Systemctl status mariadb
netstat -antpl | grep 3306
=============================
mysql安装后,默认没有密码
mysql命令直接进入管理
为mysql账户设置密码:
mysqladmin -u 用户名 -p password 密码
再回车即可,若有原密码,输入原密码回车实现改密码
mysqladmin -uroot -p password 123123
以后进入mysql,通过
mysql -uroot -p123123
进入mysql数据库配置模式:
mysql -u 用户名
mysql -u root //root是mysql自己的管理员账户,默认没有密码
进入mysql数据库配置模式(有密码情况):
mysql -u 用户名 -p密码
或
mysql -u 用户名 -p
输入密码再回车
如:mysql -u root -p123456
mysql -u root -p
退出mysql配置模式:
quit;
忘记root密码:
vim /etc/my.cnf.d/server.cnf
在[mysqld]下方添加一行信息:skip-grant-tables
保存退出
Systemctl restart mariadb
mysql -u root
update mysql.user set password=PASSWORD(‘新密码‘) where user=‘root‘;
quit;
vim /etc/my.cnf.d/server.cnf
注释掉skip-grant-tables
保存退出
Systemctl restart mariadb
生效!
=================================
查看/列出所有数据库:
show databases;
进入数据库:
use 数据库名;
查看/列出所有表
show tables;
查看表的内容:
select 字段名 from student;
select * from 表名;
select user,password from 表名
查看/列出表的所有字段:
desc 表名;
建立新数据库:
create database 数据库名;
创建表: 主键
create table 库名.表名 (字段名 类型,字段名 类型,字段名 类型, primary key(字段名));
注释:
int 整数类型 xxxxxxxxxx 10位 4字节
bit 比特类型 0/1
float 单精度浮点类型
char(n) 字符串 固定长度
varchar(n) 字符串 可变长度
text 字符串 可变长度
date xxxx-xx-xx
time hh:mm:ss
添加一条记录/值:
insert into 库名.表名 [(字段名,字段名.....)] values (值,值.....);
------------------------------------------
更改表的字段及类型:(更改表的结构)
help alter; //查看alter命令的帮助信息
修改表的字段:
alter table 库名.表名 add 字段名 类型 [first/after 字段名];
alter table 库名.表名 drop 字段名;
alter table 库名.表名 modify 字段名 类型;
alter table chengji add banji varchar (2);
修改一条记录/值:
update 库名.表名 set 字段=值 [where 条件];
update cj set sex=NULL where 条件;
update cj set shuxue=60,yuwen=60 where name=‘lsy‘;
条件语法格式:字段=值
注意:当值为数字时不需要加单引号,如是字符串必须加单引号。
==============================
删除记录:
delete from 库名.表名 where 条件;
删除表:
drop table 库名.表名;
删除数据库:
drop database 数据库名;
如何备份数据库,以及绕过数据库用户验证登录
mysqldump -u root -p 库名 表名 > 路径文件
进入mysql后
进入数据库
source chengji.dmp;
可以恢复数据
如何授权远程用户登录数据库管理表格
grant all privileges on . to [email protected]‘172.18.11.%‘ identified by ‘123123‘;
status;
查看数据库状态
查询记录:
select 字段名列表 from 表名;
select 字段名列表 from 表名 [where 条件表达式];
select * from t1 where age > 10;
注释:
字段名列表的表示方式:
- 所有字段
字段名1
字段名1,字段名2, 字段名N
条件的表示方式:
结构: 字段 运算符 值
===============================================
Mysql作业
MYSQL更改root密码和添加一个用户的用户密码(忘记密码的情况下)
MYSQL建立学籍表与成绩表,进行关联查询,从两个表取出:姓名,分数,班级,成绩。
MYSQL数据备份,模拟库删除后的数据恢复。
*
以上是关于第二十章 数据库操作的主要内容,如果未能解决你的问题,请参考以下文章