学习大数据的第33天(mysql篇)——安装mysql以及一些sql语句

学习大数据的第33天(mysql篇)——安装mysql以及一些sql语句

mysql数据库操作:

关系型:以行作为记录,列数相同
非关系型:以列作为记录,行数随便

服务器->数据库->表(行列组成的二维表格)->行

一、Linux上安装 mysql:
1、安装mysql5.7

​ 下载yum Repository(在linux中还得先下载插件 yum install wget )
​ wget -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

2、安装yum Repository

​ yum -y install mysql57-community-release-el7-10.noarch.rpm

3、安装mysql5.7

​ yum -y --nogpgcheck install mysql-community-server

4、开机自启动

​ systemctl enable mysqld.service

5、启动mysql

​ systemctl start mysqld.service
​ 查看状态
​ systemctl status mysqld.service

6、获取临时密码

​ grep “password” /var/log/mysqld.log

7、登录mysql

​ mysql -uroot -p

8、关闭密码复杂验证

​ set global validate_password_policy=0;
​ set global validate_password_length=1;

9、设置密码

​ alter user user() identified by “123456”;

10、修改权限

​ use mysql;
​ GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION; --修改权限
​ flush privileges; --刷新权限
​ select host,user,authentication_string from user; --查看权限

​ 从linux操作

11、卸载yum Repository

​ 因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
​ yum -y remove mysql57-community-release-el7-10.noarch

如果想要卸载mysql,一定得把注册表中的删除掉
卸载mysql

​ 删除依赖包
​ rpm -qa |grep -i mysql
​ yum remove mysql-community mysql-community-server mysql-community-libs mysql-community- common

清理文件

​ find / -name mysql
​ rm -rf 文件名

二、mysql的基本命令
开始之前先做好准备工作:解决mysql自带的问题:
在navicate中创建好的数据库中运行:

set@@global.sql_mode=‘STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION’;
然后关闭连接重新打开

SQL语句的学习:
1、展示所有数据库:

​ show databases;

​ show create database shujia;

​ 运行结果:CREATE DATABASE shujia /*!40100 DEFAULT CHARACTER SET latin1 */

​ 字符集改成utf-8,可以在创建数据库的时候更改,或者执行:

​ create database shujia default character set utf-8;

​ 或者修改mysql的配置文件,改完之后不要再改了,因为mysql服务器的编码集,表的编码集默认和库一致

  • 编辑配置文件:```vim /etc/my.cnf``
    [client]
    default-character-set = utf8mb4
    [mysqld]
    character-set-server = utf8mb4
    collation-server = utf8mb4_general_ci

  • 保存之后重启mysql

    systemctl restart mysqld

    登陆查看编码集是否正确:

    show variables like “%char%”;

2、创建数据库

​ create database 数据库名称;

​ create database if not exists shujia; 创建不存在的数据库

3、删除数据库

​ drop database 数据库名称

注意:如果想要删除的数据库名称不存在,则会报错,所以一般要输出:drop database if exists 数据库名称

​ 4、创建表

​ create table students(
​ id int,
​ name varchar(255),
​ age int
​ );

常用的属性:

​ 字段属性:
​ not null:没给值数据为默认值(varchar默认值为空)
​ AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1
​ PRIMARY KEY关键字用于定义列为主键,您可以使用多列来定义主键,列间以逗号分隔
​ ENGINE 设置存储引擎,CHARSET 设置编码
​ default null:没给值数据就是null
​ default 值:设置字段的默认值
​ 注意:主键不重复的列

测试代码:
-- 创建数据库
-- create database test;


-- 删除数据库 
-- drop database test;

-- show:可以查看所有的库  所有的表 还可以查看具体的详细信息
-- show 创建语句
-- show tables;
-- CREATE DATABASE `shujia` /*!40100 DEFAULT CHARACTER SET utf8mb4 */
drop database shujia;
create database shujia;
show create database shujia;

-- Date 和  time 的区别
-- 年月日    时分秒

-- 简单的建表语句
use shujia;
-- 格式:
-- create table 表明(
-- 	字段名字 字段类型
-- 	字段2,
-- 	...
-- 	字段n
-- )

-- varchar 必须需要给定固定的大小,int 可以不加因为int会默认加上长度为11
-- engine=INNODB DEFAULT CHARSET(utf-8)   设置引擎和编码集,不过我们在mysql的配置文件中设过了
-- create table students(
-- 	id int,
-- 	name varchar(255),
-- 	age int
-- );

-- 自增只能加给数值
-- drop table if exists students;
-- 常用的属性
-- create table students(
-- 	id int not null AUTO_INCREMENT,
-- 	name varchar(255) not null,
-- 	age int,
-- 	PRIMARY KEY(id)
-- );
-- 

-- enum 类型 所修饰的字段有固定的值
drop table if exists students;
create table students(
 	id int AUTO_INCREMENT,
 	name varchar(255) not null,
	age int DEFAULT 18,   #无论字段是否为null都可以输入
	sex enum('男','女','未知') DEFAULT '未知',
 	PRIMARY KEY(id)
);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值