MySQL 常用操作

1. MySQL 初始配置

1.1 修改环境变量

添加mysql到环境变量中去

vim /etc/profile
##### 增加
export PATH=$PATH:/usr/local/mysql/bin
##### 刷新环境变量
source /etc/profile

1.2 创建、设置、重置密码

1.2.1 创建、设置密码

  • MySQL 5.6 版本未生成初始密码,有初始密码的直接修改
#### 设置密码
mysqladmin -uroot password '123456' //这里123456不填,稍后会弹出密码输入框输
#### 修改密码
mysqladmin -uroot -p'123456' password '123abc'
#### 登录MySQL
mysql -uroot -p //`-u`指定用户、`-p`指定密码
  • MySQL 5.7 及以后的版本root有默认密码,必须重设密码后,才能进行mysql的操作,以下是设置操作步骤:
#### 查看默认密码
cat /root/.mysql_secret
# The random password set for the root userat Fri Jan 10 20:00:34 2014 (local time): aJqZsA2m
#### 这里 aJqZsA2m 就是系统生成的随机密码 #### 登录MySQL
mysql -u root -p
#### 更改密码
SET PASSWORD FOR 'root'@localhost = PASSWORD ('123456');

1.2.2 密码重置

vim /etc/my.cnf
##### [mysqld]下增加:
skip-grant
#### 重启mysql服务
/etc/init.d/mysqld restart
#### 用root用户登录mysql,更新user表中的密码
mysql -uroot
use mysql;
update user set password=password('aminglinux') where user='root';
#### 删除/etc/my.cnf中添加的skip-grant 参数
####重启mysql服务
/etc/init.d/mysqld restart

1.3 连接 MySQL

#### 指定用户、密码连接(-u 指定用户、-p 指定密码)
mysql -uroot -p'123456'
#### 指定IP、端口连接(-h 指定来源IP -P 指定端口)
mysql -uroot -p123456 -h127.0.0.1 -P3306
#### 指定 socket 文件连接( -S 指定socket文件)
mysql -uroot -p123456 -S/tmp/mysql.sock
#### 指定登录后任务(-e 指定登录后执行的命令,show databases 查看库)
mysql -uroot -p123456 -e "show databases"

2. MySQL 常用命令

命令 注释 命令 注释
select version(); 查看当前数据库版本 use mysql; 切换库(选择默认库,可以不用;结尾)
show databases; 查询库 show tables; 查看库里的表
desc tb_name; 查看表里的字段 show create table tb_name\G; 查看建表语句
select user(); 查看当前用户 select database(); 查看当前使用的数据库
create database db1; 创建库 create table t1(`id` int(4), `name` char(40)); 创建表(use db1;需先选择库)
show status; 查看数据库状态 show variables like 'max_connect%'; 查询某个参数‘max_connect%’
show variables 列出所有参数信息 set global max_connect_errors=1000; 临时修改参数(永久生效修改my.cnf)
show processlist; 查看队列 show full processlist; 查看队列(显示内容更完整)

3. MySQL 创建用户以及授权

3.1 创建用户&授权

  • grant all on *.* to 'user1'@'%' identified by 'passwd';

    all 所有操作权限,第一个 *表示所有的库,第二个*表示所有的表,user为创建的用户,%所有终端(@'%'不指定,默认%),passwd为用户密码

  • grant SELECT,UPDATE,INSERT on db1.* to 'user2'@'192.168.133.1' identified by 'passwd';

    user2 权限 (select``update``insertdb1的所有表,来源IP:192.168.133.1,密码:passwd)

  • grant all on db1.* to 'user3'@'%' identified by 'passwd';

    user3 权限(所有操作权限,db1库的所有表,所有终端,密码:passwd

3.2 查看用户授权

  • 查看当前用户的授权:show grants;

  • 查询特定用户的授权,可用于复制用户 show grants for user2@192.168.133.1;

4. 常用 SQL 语句

4.1 查看表的行数

select count(*) from mysql.user;

  • MyISAM 保存了表的具体行数
  • InnoDB 没有保存表的具体行数,需要逐行扫描统计,速度就会慢

4.2 查看表的所有内容

select * from mysql.db;

4.3 查询表的某列内容

  • 查询一列内容

    select db from mysql.db;

  • 查询多列内容,多列用,分隔

    select db,user from mysql.db;

4.4 按条件查询表内容

select * from mysql.db where host like '192.168.%';

4.5 表插入内容(写表)

insert into db1.t1 values (1, 'abc');i

4.6 更新表内容

update db1.t1 set name='aaa' where id=1;

4.7 清空表

清空表内容,表结构不变

truncate table db1.t1;

4.8 删除表、删除库

  • 删除表:drop table db1.t1;
  • 删除库:drop database db1;

5. MySQL 数据库的备份与恢复

5.1 备份库

mysqldump -uroot -p123456 mysql > /tmp/mysql.sql

5.2 恢复库

mysql -uroot -p123456 mysql < /tmp/mysql.sql

5.3 备份表

mysqldump -uroot -p123456 mysql user > /tmp/user.sql

5.4 恢复表

mysql -uroot -p123456 mysql < /tmp/user.sql

5.5 备份所有库

mysqldump -uroot -p -A > /tmp/123.sql

5.6 只备份表结构

mysqldump -uroot -p123456 -d mysql > /tmp/mysql.sql

MariaDB 安装 (YUM)的更多相关文章

  1. mariadb安装和一些sql基础

    MariaDB安装    yum -y install mariadb mariadb-server 启动    systemctl start mariadb     systemctl enabl ...

  2. yum install mariadb安装数据库开启不了

    centos7内置的MySQL镜像已经放弃Oracle公司的MySQL,改用MySQL的分支数据库mariaDB,使用以下安装mariadb: yum install mariadb 然后使用命令sy ...

  3. centos 7 卸载 mariadb 安装mysql

    1,卸载mariadbsystemctl stop mariadbrpm -qa | grep mariadbrpm -e --nodeps mariadb-5.5.52-1.el7.x86_64rp ...

  4. mysql、mariadb安装和多实例配置

    本文目录:1. mysql单实例安装 1.1 rpm安装mysql 1.2 通用二进制包安装mysql 1.2.1 初始化数据库 1.2.2 安装后的规范化操作 1.3 编译安装 1.3.1 编译安装 ...

  5. mariadb安装

    1.配置yum源 基本源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo ...

  6. centos7 Mycat/MySQL/MariaDB安装部署

    使用yum安装MySQL详细步骤 安装mysql源 centos系统中不包含mysql的源,需要先安装mysql源 1.官网下载源.使用图形界面操作系统进入mysql官网,进入以下界面. 2.在Cen ...

  7. CentOS MariaDB 安装和配置

    sudo vi /etc/yum.repos.d/mariadb.repo # MariaDB 10.1 CentOS repository list - created 2017-03-23 13: ...

  8. centos 7 mariadb安装

    centos 7 mariadb安装 1.安装MariaDB 安装命令 yum -y install mariadb mariadb-server 安装完成MariaDB,首先启动MariaDB sy ...

  9. MariaDB安装及基本配置

    MariaDB安装及基本配置(CentOS6.9) 数据库基础概念 数据库(Database, DB)是按照数据结构来组织.存储和管理数据的建立在计算机存储设备上的仓库. DBMS: Database ...

随机推荐

  1. C++关于二进制位操作小结

    #include <iostream> using namespace std; //二进制位逆序. int Grial(int x) { int n = 32; int count = ...

  2. HDU3265 Examining the Rooms【stirling数】

    题目链接: http://acm.hdu.edu.cn/showproblem.php? pid=3625 题目大意: 有N个房间,每一个房间的要是随机放在某个房间内,概率同样.有K次炸门的机会. 求 ...

  3. 【POJ 2195】 Going Home(KM算法求最小权匹配)

    [POJ 2195] Going Home(KM算法求最小权匹配) Going Home Time Limit: 1000MS   Memory Limit: 65536K Total Submiss ...

  4. powerpoint(ppt) 的制作

    1. 幻灯片母版 所谓母版,是共享的部分,也即想在全部幻灯片重复出现的元素. 首先,幻灯片母版在菜单栏的[视图]选择[幻灯片母版]显示和查看. 通过幻灯片母版的编辑和设计,可进一步: 在幻灯片的相关位 ...

  5. 2015北京网络赛 J Scores bitset+分块

    2015北京网络赛 J Scores 题意:50000组5维数据,50000个询问,问有多少组每一维都不大于询问的数据 思路:赛时没有思路,后来看解题报告也因为智商太低看了半天看不懂.bitset之前 ...

  6. azkaban(安装配置加实战)

    为什么需要工作流调度系统 一个完整的数据分析系统通常都是由大量任务单元组成:shell 脚本程序,java 程序,mapreduce 程序.hive 脚本等 各任务单元之间存在时间先后及前后依赖关 ...

  7. js正则学习分享

    http://www.cnblogs.com/rubylouvre/archive/2010/03/09/1681222.html http://www.cnblogs.com/tylerdonet/ ...

  8. Flex4之事件详解

    第一.Flex事件简介 事件贯穿于Flex应用开发的全过程.事件是ActionScript .0中最重要的部分之一,也是Flex应用程序开发的核心基础.本章将在DOM 3的基础上详细讲解ActionS ...

  9. ES6学习笔记(一)新的变量定义命令let和const

    1.一些历史 ES6(ECMAScript 6.0)是 JavaScript 语言的新一代标准,于2015 年 6 月正式发布,距今已经4年了,它的目标,是使得 JavaScript 语言可以用来编写 ...

  10. BZOJ1189: [HNOI2007]紧急疏散evacuate(二分答案,最大流)

    Description 发生了火警,所有人员需要紧急疏散!假设每个房间是一个N M的矩形区域.每个格子如果是'.',那么表示这是一 块空地:如果是'X',那么表示这是一面墙,如果是'D',那么表示这是 ...