ctrl + c 终止

[linux]

service mysql start 启动mysql

service mysql stop 停止mysql

service mysql restart 重启mysql

[windows] 以超级管理员的身份进行操作

net start mysql 启动mysql

net stop mysql 停止mysql

### part1

mysql客户端 登录 mysql服务器

(1)登录本地的mysql 默认 root 是最高权限用户

mysql -uroot -p

-u 指定用户

-p 指定密码

-h 指定ip

(2) 退出

exit 或者 \q

(3) 登录远程mysql服务器

mysql -uroot -h192.168.75.128 -p

### part2

mysql 设置密码

查询当前登录的用户是谁

select user();

设置密码

set password = password("123456")

去除密码

set password = password("");

### part3

mysql 创建账户 (单纯的创建账户,没有任何权限)

create user 'ceshi01'@'192.168.75.1' identified by '111'; # 给具体ip设置账户

create user 'ceshi02'@'192.168.75.%' identified by '222'; # 指定某个网段设置账户

create user 'ceshi03'@'%'; # 所有的ip都能依靠这个账户连接到数据库

mysql -uceshi02 -h192.168.75.128 -p

查看用户权限

show grants for 'ceshi02'@'192.168.75.%'

GRANT USAGE ON . TO 'ceshi02'@'192.168.75.%' # USAGE 没有任何权限

grant授权完整语法:

grant 权限 on 数据库.表名 to '用户名'%'ip地址' identified by '密码';

"""

select 查询数据权限

insert 插入数据权限

update 更新数据权限

delete 删除数据权限

"""

* 代表所有

grant select,delete on . to 'ceshi02'@'192.168.75.%' identified by '666';

查看所有数据库

show databases

移除权限

revoke select on . from 'ceshi02'@'192.168.75.%'

删除账户

drop user 'ceshi02'@'192.168.75.%'

刷新权限

flush privileges

### part 4

"""

linux /var/lib/mysql 存放着数据库等相关文件

find / -name db1 找到对应的路径

但是有权限的限制,需要切换到root用户才能够操作;

"""

SQL 语句:

1.操作[数据库] (文件夹)

增:

# 创建数据库db1,设置字符集utf8

create database db1 charset utf8;

查:

# 查看数据库

show databases;

# 查看数据库建库语句

show create database db1;



#更改数据库字符集

alter database db1 charset gbk;



# 删除数据库db2

drop database db2;

2.操作[数据表] (文件)

选择数据库

use 数据库名称

增:

int 整型 char 字符串

# 创建数据表t1(字段名1 类型1, 字段名2 类型2)

create table t1(id int,name char);



# 查看所有数据表

show tables;

# 查看建表语句

show create table t1;

show create table t1\G

"""

CREATE TABLE t2 (

id int(11) DEFAULT NULL,

name char(1) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8

"""

# 查看表结构

desc t1;



# modify 只改变数据类型

alter table t1 modify name char(6);

# change 联名带数据同时改变

alter table t1 change name NAME char(7);

# 改回去

alter table t1 change NAME name char(6);

# add 添加字段

alter table t1 add age int;

# drop 删除字段 column 列

alter table t1 drop column age;

# 更改表名

alter table t1 rename t999;



# 删除表t1

drop table t999

3.操作记录 (文件内容)

NULL <==> None 等价

增:

# 一次插一条t1(字段名1,字段名2,字段名3,.......) values(对号入座)

insert into t1(id,name) values(1,"xboy1");

# 一次插多条

insert into t1(id,name) values(2,"xboy2"),(3,"xboy3"),(4,"xboy4"),(5,"xboy5");

# 不指定具体字段,把所有的字段值都插入一遍

insert into t1 values(6,'xboy6');

# 可以只指定1个字段插入

insert into t1(id) values(99);

查:

select id,name from t1;

select * from t1

# 不指定数据库的时查询方法

select * from db1.t1

改:

# update 表名 set 字段=值 where 条件

update t1 set name = '王文'; # 所有数据都改了

update t1 set name = "好男人" where id = 3

删:

# 删除id为1的这一条数据

delete from t1 where id = 1;

# 删除所有

delete from t1;

# 清空数据,重置自增id (速度更快)

truncate table t1;

### part 5

常用的数据类型:

整型

tinyint 1个字节 有符号(-128 ~ 127) 无符号 (0 ~ 255) 小整型值

int 4个字节 有符号(-21亿 ~ 21亿) 无符号(0 ~42亿) 大整型值 , 精度更高

create table t1(id int , sex tinyint);

create table t11(id int unsigned , sex tinyint);

insert into t11 values(4200000000,128) error
insert into t11 values(4200000000,127)

浮点型:

float(255,30) 单精度

double(255,30) 双精度

decimal(65,30) 一般用于表达金钱类型,是使用字符串的形式保存的小数

create table t2(f1 float(5,2) , f2 double(5,2) , f3 decimal(5,2));
insert into t2 values(1.234,1.234,1.234); # decimal 默认保留整数部分,double默认保留的小数为比float更多,精度更高,float默认小数保留5位,存在四舍五入
create table t3(f1 float,f2 double,f3 decimal);
insert into t3 values(1.235555555555555555555,1.235555555555555555555666666666666666666666666666666666,1.699995555555555555555555);

字符串:

char(11) 定长:固定开辟11个长度的空间 (手机号,身份号) 速度快

varchar(11) 变长:最大开辟字符长度为11的空间 (文章评论 5~255 个评论字数) 相较于char速度慢

text 这种类型专门用于存储文章,论文,小说.

create table t4(c char(11),v varchar(11),t text);

insert into t4 values('1122' , 'dddff' , "sdfsdfsdfsdfssadfsadf1")

select concat(c,v,t) from t4;

select concat(c,":",t) from t4;

枚举 % 集合

enum 和 set 的数据类型,必须从中进行挑选

enum 枚举 从一组数据中选一个(性别)

set 集合 从一组数据中选多个,自动去重

create table t5(
id int,
name varchar(15),
money float(6,2),
sex enum("man","woman"),
hobby set("eat","drink","piao","du","smoke")
) insert into t5(id,name,money,sex,hobby) values(1,'liyi',9999.1,"woman","piao,du");
insert into t5(id,name,money,sex,hobby) values(1,'liyi',9999.1,"woman","piao,piao,piao,du");

mysql 的内置函数

concat(参数1,参数2,参数3 ........) 把所有的参数拼接在一起

### 目的:配置linux中的文件my.cnf

找: find / -name my.cnf

结果如下:

!includedir /etc/mysql/conf.d/

!includedir /etc/mysql/mysql.conf.d/

cd /etc/mysql/conf.d/ => mysql.cnf

nano mysql.cnf [mysql]

把下面的代码写入客户端中

[mysql]

设置mysql客户端默认字符集

default-character-set=utf8

cd /etc/mysql/mysql.conf.d/ => mysql.cnf

nano mysql.cnf [mysqld]

把下面的配置写到文件中

服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

重启

service mysql restart

mysql数据库终端上的增删改查及权限等相关操作的更多相关文章

  1. MySQL数据库之表的增删改查

    目录 MySQL数据库之表的增删改查 1 引言 2 创建表 3 删除表 4 修改表 5 查看表 6 复制表 MySQL数据库之表的增删改查 1 引言 1.MySQL数据库中,数据库database就是 ...

  2. 使用JDBC分别利用Statement和PreparedStatement来对MySQL数据库进行简单的增删改查以及SQL注入的原理

    一.MySQL数据库的下载及安装 https://www.mysql.com/ 点击DOWNLOADS,拉到页面底部,找到MySQL Community(GPL)Downloads,点击 选择下图中的 ...

  3. Mysql数据库和表的增删改查以及数据备份&恢复

    数据库 查看所有数据库 show databases; 使用数据库 use 数据库名; 查看当前使用的数据库 select database(); 创建数据库 create database 数据库名 ...

  4. Python操作MySQL数据库完成简易的增删改查功能

    说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 目录 一丶项目介绍 二丶效果展示 三丶数据准备 四丶代码实现 五丶完整代码 一丶项目介绍 1.叙述 博主闲暇之余花了10个小时写的 ...

  5. 在python中连接mysql数据库,并进行增删改查

    数据库在开发过程中是最常见的,基本上在服务端的编程过程中都会使用到,mysql是较常见的一种数据库,这里介绍python如果连接到数据库中,并对数据库进行增删改查. 安装mysql的python扩展 ...

  6. Java连接MySQL数据库,并进行增删改查

    1.具体的代码实现 import java.sql.*; public class DatabaseService { /** * Create Connection * * @param dbtyp ...

  7. MySQL数据库 | 数据表的增删改查

    MySQL数据的增删改查(crud) 本文结构 一.增加 create 二.修改 update 三.查询 retrieve(简单查询,下篇详细展开) 四.删除 delete 首先,创建简单的class ...

  8. python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作

    1.通过 pip 安装 pymysql 进入 cmd  输入  pip install pymysql   回车等待安装完成: 安装完成后出现如图相关信息,表示安装成功. 2.测试连接 import ...

  9. 关于利用PHP访问MySql数据库的逻辑操作以及增删改查实例操作

    PHP访问MySql数据库 <?php //造连接对象$db = new MySQLi("localhost","root","",& ...

随机推荐

  1. json基本内容

    json的基本信息和历史 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于欧洲计算机协会制定的js规范的一个子集,采用完全独立于编程语言的文本格式来 ...

  2. docker安装sshd

    基础镜像: ubuntu:14.04 启动并安装sshd //启动 docker run -it ubuntu:14.04 /bin/bash //更新apt-get apt-get update / ...

  3. Mac tensorflow mnist实例

    Mac tensorflow mnist实例 前期主要需要安装好tensorflow的环境,Mac 如果只涉及到CPU的版本,推荐使用pip3,傻瓜式安装,一行命令!代码使用python3. 在此附上 ...

  4. NOIP模拟赛 华容道 (搜索和最短路)蒟蒻的第一道紫题

    题目描述 小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面, 华容道是否根本就无法完成,如果能完成, 最少需要多少时间. 小 B 玩的华容道 ...

  5. Java自动化测试框架-12 - TestNG之xml文件详解篇 (详细教程)

    1.简介 现在这篇,我们来学习TestNG.xml文件,前面我们已经知道,TestNG就是运行这个文件来执行测试用例的.通过本篇,你可以进一步了解到:这个文件是配置测试用例,测试套件.简单来说,利用这 ...

  6. 学习笔记之vim的使用

    很多刚学习linux编程的人总是对vim有一种恐惧,我自己就是这么回事的. 可是当你努力的去尝试学习使用后,才发现它的精髓所在. 在我看来,让vim变得好用的前提是要安装两个插件,ctags和tagl ...

  7. ssm整合的登录

    新建一个web工程,主要结构如下: 数据库创建如下: 控制层的代码FormController 类 package codeRose.controller; import org.springfram ...

  8. 开发板,pc,虚拟机三者如何互相ping通

    1 安装虚拟机时,主机和虚拟机必须是桥接网卡,保证了ip 同一:192,168,1,xx 2 打开虚拟机之前,先把pc机的无线网卡禁用掉只能使用本地连接,pc通过网线连接上网,打开虚拟机,命令行输入: ...

  9. 8行代码批量下载GitHub上的图片

    [问题来源] 来打算写一个的小游戏,但是图片都在GitHub仓库中,GitHub网页版又没有批量下载图片的功能,只有单独一张一张的下载,所以自己就写了个爬虫脚本模拟人的操作把整个页面上需要的图片爬取下 ...

  10. python面向对象<三>

    类属性.实例属性: class Tool(object): #属性(类属性)类对象(Tool) num = 0 #方法 def __init__(self,new_name): self.name = ...