mysql 的使用
1. 安装
https://dev.mysql.com/downloads/mysql/
2. 配置
$ vim ~/.bash_profile
$ export PATH=$PATH:/usr/local/mysql/bin
3. 服务
$ sudo mysql.server start //启动
$ sudo mysql.server stop //停止
$ sudo mysql.server restart //重启
$ sudo mysql.server status //状态
$ mysqladmin -u root -p password 123456 //修改密码
//cmd //net start/stop/restart mysql
4. 用户&授权
mysql> create user username identified by 'password';
mysql> create user username@'localhost' identified by 'password';
mysql> grant all privileges on *.* to username@'%' identified by 'password';
mysql> grant all privileges on dbName.* to username@'%' identified by 'password';
mysql> grant all privileges on dbName.tableName to username@'%' identified by 'password';
mysql> flush privileges;
mysql> show grants; //查看当前用户的权限
mysql> show grants for 'username'; //查看某个用户的权限
mysql> drop user admin@'%'; //删除某个用户
mysql> insert into mysql.user(Host,User,Password) values("localhost","zhangs",password("123456"));
mysql> revoke all on dbName:tableName from username@'localhost' //移除用户权限
/*
privilegesCode表示授予的权限类型,常用的有以下几种类型[1]:
all privileges:所有权限。
select:读取权限。
delete:删除权限。
update:更新权限。
create:创建权限。
drop:删除数据库、数据表权限。
dbName.tableName表示授予权限的具体库或表,常用的有以下几种选项:
.:授予该数据库服务器所有数据库的权限。
*.* 授予所有权限
dbName.*:授予dbName数据库所有表的权限。
dbName.dbTable:授予数据库dbName中dbTable表的权限。
username@host表示授予的用户以及允许该用户登录的IP地址。其中Host有以下几种类型:
localhost:只允许该用户在本地登录,不能远程登录。
%:允许在除本机之外的任何一台机器远程登录。
192.168.52.32:具体的IP表示只允许该用户从特定IP登录。
*/
4. 连接
$ mysql
$ mysql -u username -h host -H port -p
-u 用户名
-h 域名 ip //默认是localhost
-H 端口号
-p 密码
eg. $ mysql -u root -p
mysql> exit //退出
5. 数据库
mysql> show databases; //列出该用户下的所有可用数据库
mysql> use name; //连接并切换到该数据库下
mysql> flush privileges; //刷新数据库
mysql> create database myDatabase;
mysql> drop database myDatabase;
注:使用mysqladmin 也能操作数据库
$ mysqladmin -u root -p create myDatabase;
$ mysqladmin -u root -p drop myDatabase;
5. 表
mysql> show tables; //显示该数据库下的表
create ;
/*
mysql> creat table person(
> id int auto_creament,
> userId varchar(20) not null unique,
> name varchar(20) not null,
> sex int default,
> pramary key(userId));
*/
drop;
/*
mysql> drop table person;
*/
delete;
/*
mysql> delete from person where userId = '10001';
mysql> delete from person where userId = '10001' or userId = '10002';
*/
select;
/*
mysql> select userId,name from person where userId = '10001';
mysql> select * from person where userId like '1000%' and age > 20;
*/
insert;
/*
mysql> insert into person (userId,name,sex) values('10003','gulong',28);
*/
update set;
/*
update person set name='guzheng',age = 13 where userId = '10002'
*/
order by //默认asc
///mysql> select * from person where userId like '1000%' order by sex asc;
group by
//sql 注入
$ mysql -u admin -p 123 < mmm.sql
//数据导出
$ mysqldump -u admin -p AdminDB person > mmm.text
6. 其他
//密码策略
mysql> set global validate_password_policy=0;
//验证密码最小长度
mysql> set global validate_password_length=0;
//查看密码策略
mysql> show variables like 'validate_password%';
//查看端口号
show global variables like 'port';
mysql 的使用的更多相关文章
- Hadoop 中利用 mapreduce 读写 mysql 数据
Hadoop 中利用 mapreduce 读写 mysql 数据 有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...
- mysql每秒最多能插入多少条数据 ? 死磕性能压测
前段时间搞优化,最后瓶颈发现都在数据库单点上. 问DBA,给我的写入答案是在1W(机械硬盘)左右. 联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高(SSD硬盘) 但这东西感 ...
- LINUX篇,设置MYSQL远程访问实用版
每次设置root和远程访问都容易出现问题, 总结了个通用方法, 关键在于实用 step1: # mysql -u root mysql mysql> Grant all privileges o ...
- nodejs进阶(6)—连接MySQL数据库
1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...
- MySQL高级知识- MySQL的架构介绍
[TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...
- 闰秒导致MySQL服务器的CPU sys过高
今天,有个哥们碰到一个问题,他有一个从库,只要是启动MySQL,CPU使用率就非常高,其中sys占比也比较高,具体可见下图. 注意:他的生产环境是物理机,单个CPU,4个Core. 于是,他抓取了CP ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- Entity Framework Core 实现MySQL 的TimeStamp/RowVersion 并发控制
将通用的序列号生成器库 从SQL Server迁移到Mysql 遇到的一个问题,就是TimeStamp/RowVersion并发控制类型在非Microsoft SQL Server数据库中的实现.SQ ...
- Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境
首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...
- 当忘记mysql数据库密码时如何进行修改
因为长时间没有使用数据库了,或者把密码改完之后就忘了数据库密码,不能正常进入数据库,也无法修改密码,有一个简单的常用修改密码方式: 1.首先找到和打开mysql.exe和mysqld.exe所在的文件 ...
随机推荐
- [代码质量] 代码质量管控 -- 复杂度检测 (JavaScript)
转载自: https://juejin.im/post/59bb8b546fb9a00a4247532e 背景 代码的复杂度是评估一个项目的重要标准之一.较低的复杂度既能减少项目的维护成本,又能避免一 ...
- cocos creator策略类手游开发教程
目录 大小6.83GB,Mp4格式,语言:中文 扫码时备注或说明中留下邮箱 付款后如未回复请至https://shop135452397.taobao.com/ 联系店主
- nginx针对某个url限制ip访问,常用于后台访问限制【转】
假如我的站点后台地址为: http://www.abc.net/admin.php 那么我想限制只有个别ip可以访问后台,那么需要在配置文件中增加: location ~ .*admin.* { al ...
- 数据库sql优化总结之5--数据库SQL优化大总结
数据库SQL优化大总结 小编最近几天一直未出新技术点,是因为小编在忙着总结整理数据库的一些优化方案,特此奉上,优化总结较多,建议分段去消化,一口吃不成pang(胖)纸 一.百万级数据库优化方案 1.对 ...
- 如何打开uboot的函数debug()的开关,输出更多调试信息?
答: 有两种方法: 一. 方法一 在文件<file>.c的首行加入以下内容: #define DEBUG #undef CONFIG_LOGLEVEL #define CONFIG_LOG ...
- 搭建SpringCloud微服务
建立spring父模块 删除不必要的src目录 父模块中的pom.xml中添加相应的依赖以及插件.远程仓库地址 <!-- 项目的打包类型, 即项目的发布形式, 默认为 jar. 对于聚合项目的父 ...
- 数据分析入门——pandas之数据合并
主要分为:级联:pd.concat.pd.append 合并:pd.merge 一.numpy级联的回顾 详细参考numpy章节 https://www.cnblogs.com/jiangbei/p/ ...
- [LeetCode] 95. Unique Binary Search Trees II 唯一二叉搜索树 II
Given n, generate all structurally unique BST's (binary search trees) that store values 1...n. For e ...
- 删除Win10自动下载的更新安装包
当我们禁止了系统的自动更新后,会感觉还有什么东西没做,没错,你还没有删除系统自动下载好的安装包,如果不删除的话会白白浪费磁盘空间!那么系统自动下载的安装包在哪里呢? C盘Windows—Softwar ...
- PDF阅读器关闭“使用手型工具阅读文章”功能
1.问题描述 某些PDF文件打开时,光标显示的手型工具里面有个箭头,一点击鼠标左键,就跳转到下一页了.给阅读带来很多不便. 2.原因 因为这类PDF文档中带有"文章"(articl ...