MySQL命令总结

安装MySQL

  1. 安装
sudo apt-get install mysql-server
  1. 服务
启动服务:sudo service mysql start
停止服务:sudo service mysql stop
重启服务:sudo service msyql restart
  1. 配置
配置文件目录为/etc/mysql/mysql.cnf

进入conf.d目录,打开mysql.cnf,发现并没有配置

进入mysql.conf.d目录,打开mysql.cnf,可以看到配置项

主要配置如下

    bind-address表示服务器绑定的ip,默认为127.0.0.1

    port表示端口,默认为3306

    datadir表示数据库目录,默认为/var/lib/mysql

    general_log_file表示普通日志,默认为/var/log/mysql/mysql.log

    log_error表示错误日志,默认为/var/log/mysql/error.log

数据库命令

-- 连接数据库
mysql -uroot -p;

-- 退出数据库
quit/exit/ctrl + d

-- 查询数据库版本
select version();

-- 查询当前时间
select now();

-- 查看当前使用的数据库
select database();

-- 查看所有数据库
show databases;

-- 创建数据库,设置字符集为utf8
create database db_name charset=utf8;

-- 查看数据库
show create database db_name;

-- 使用数据库
use db_name;

-- 删除数据库
drop database db_name;

数据表操作命令

数据表操作命令

  1. alter add 添加字段
  2. alter modify/change 修改字段
  3. alter drop 删除字段
-- 创建一个表
create table t_name(
    id int unsigned not null,
    name varchar(20)
);

-- 查看表结构
desc t_name;

-- 查看表的创建语句
show create table student;

-- 添加字段(列)
-- alter table t_name add 列名 类型;

-- 修改字段
alter table t_name modify 列名 类型及约束;
-- 修改字段重命名
alter table t_name change 原列名 新列名 类型及约束;

--删除字段
alter table t_name drop 列名;

增查改删(CRUD)

-- 增(insert)
insert into t_name values();
-- 部分插入
insert into t_name(列1,列2,...) values(值1,值2,...);
-- 多行插入
Insert into t_name values(),(),()…();

-- 查(select)

-- 查询所有列
select * from t_name;
-- 按条件查询
select * from t_name where 条件;
-- 指定列查询
select 列1 [as 别名],列2 [as 别名]... from t_name;

-- 改(update)
update table set 列1 = 值1,列2=值2...where 条件;

-- 删(delete)
delete from t_name where 条件;

-- 逻辑删除
-- 用一个字段来表示 这条信息是否已经不能再使用了
-- 给students表添加一个 is_delete 字段 bit 类型

数据库的备份与恢复

-- mysqldump –uroot –p 数据库名 >python.sql;

-- mysql -uroot –p 新数据库名 < python.sql;

授权与创建用户

“` sql
– 常用权限 create,alter,drop,insert,update,delete,select…
– 分配所有权限 all privileges

–创建用户
use mysql
– 创建用户&授权
– grant 权限列表 on 数据库 to ‘用户名’@’访问主机’ identified by ‘密码’;
– 可以操作db里面的所有表 用 db_name.*
– 访问主机 使用% 表示任意ip登录 一般建议用localhost 不建议使用%
– 创建一个用户 zheng 密码:zheng
grant all privileges on jing_dong.* to ‘zheng’@’localhost’ identified by ‘zheng’;

– 查看用户具有的权限
show grants for user@localhost;

– 修改权限
– grant 权限名称 on 数据库 to 账户@主机 with grant option;
grant select,update on jing_dong.* to ‘zheng’@’localhost’ with grant option;

– 刷新权限
flush privileges

– 删除用户
drop user user@’localhost’;

delete from user where user=’username’;
flush privileges

– 修改密码
– update user set authentication_string=password(‘新密码’) where user=’用户名’;(语法格式)
update user set authentication_string=password(‘123’)where user=’zheng’;
10/05/2018 10:00