mysqls数据库的常用管理命令

库,表管理
Mysqladmin –u root –p password ‘123123’ //设置数据库密码
Show databases; //查看数据库
Create database school; //创建数据库(school)
Use school; //进入数据库(school)
Show tables; //查看school中的表
Create table info(id int not null primary key auto_increment,name char(10)not null,score decimal(5,2),hobby int(2)); //创建表(info)
if not exists info( id int(4) primary key, name varchar(10) not null, card varchar(50) unique key, hobby int(4)); //如info表不存在则建立该表
alter table test01 rename info01 //修改表名
alter table info change name username varchar(10) unique key; //修改信息名,并设置约束
alter table info add address varchar(50) default ‘地址不详‘ ; //添加信息
alter table info drop password; //删除信息
alter table hob add constraint pk_id primary key hob (sid); //添加主键
Select from info //查看info表中的数据
Insert into info (id,name,score) values (6,’test’,null); //插入数据
5
Select
from info where id=6; //条件筛选
Update info set score=75 where id=6; //更新信息
Delete from info where name=’test’; //删除信息
Select from info where 1=1 order by score(asc升序)(desc降序); //排序(升序/降序)
Desc info; //查看表结构
Select info.name,info.score,hob.hobname from info inner join hob where info.hobby=hob.id;
select username from info where hobby=(select sid from hob where hobname=‘游泳‘);
//多表查询
select a.name,a.score,b.hobname from info a inner join hob b where a.hobby=b.id;
//别名查询
create table infos select a.name,a.score,b.hobname from info a inner join hob b where a.hobby=b.id; //新建表infos内容为多表查询结果
create table test01(select a.username,b.hobname from info a inner join hob b where a.hobby=b.sid); //也可以这么写
Drop table infos; //删除infos表
统计count()
Select count(
) from infos;
平均值avg()
Select avg(score) from infos

事务,视图
事务:一组操作共同执行或者都不执行,结果保持一致
Begin 开始
Commit 提交
roll back 回滚(回到bigin之前的状态)
原子性:不可分割,视为一个整体
一致性:前后结果保持一致
隔离性:对数据进行修改的所有并发事务是彼此隔离的
持久性:执行成功不可修改
Set autocommit=0;禁止自动提交
Set autocommit=1;开启自动提交

索引
Create index <索引的名字>ON tablename(列的列表)
Create unique index <索引的名字>ON tablename(列的列表)
Create index id_index on info(id); //创建普通索引
Create unique index id_index on info(id); //创建唯一索引
Create table infos (descript TEXT,FULLTEXT(descript)); //创建全文索引
Create index id_age_index on info
Show index from info;
Drop index id_index from info; //删除索引
Alter table info add primary key(id); //修改表增加主键
Alter table info add column age int; //增加列
Alter table info drop column age int; //删除列

账户管理
Select user,authentication_string,host from user; //查询已创建的用户
Create user ‘test01’@’localhost’ identified by ‘abc123’; //创建用户
Password(‘abc123’) //生成密码abc123的密文
drop user ‘test02’@’localhost’; //删除用户
rename user ‘test01’@’localhost’ to ‘user01’@’192.168.175.128’; //账户重命名;
set password for ‘user02‘@‘localhost‘ = password‘abc123‘; //修改账户密码
mysqld –skip-grant-tables //跳过user表登录(修改root密码,先关服务1)

vim /etc/my.cnf(2)
[mysqld]
port = 3306
socket = /home/mysql/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
skip-grant-tables //添加如下内容(跳过user表登录)
update mysql.user set authentication_string = password(‘123abc’) where user=’root’;
给root用户设置密码
Grant 权限 on 数据库.表to 用户@主机 identified by 密码
grant all on . to ‘test02‘@‘localhost‘ identified by ‘abc123‘; //创建新用户或更改已有用户数据
Grant select school.info to ‘tom’@’localhost’ identified by ‘abc123’; //给tom账户查看school库下,info表的权限
Show grants; //查看用户权限
revoke 权限 on 数据库.表 from 用户@主机;
revoke update on . from ‘user02’@’localhost’; //撤销权限

[client]
Default-character-set=utf8

日志管理
vim /etc/my.cnf
#错误日志
log-error=/usr/local/mysql/data/mysql_error.log
#通用日志
general_log=ON
general_log_file=/usr/local/mysql/data/mysql_general.log
#二进制日志
log_bin=mysql-bin
#慢日志
slow_query_log=ON
slow_query_log_file=mysql_slow_query.log
long_query_time=1
mysqlbinlog --no-defaults mysql-bin.000001 //查看二进制日志
mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000001 //解码查看二进制日志

数据库备份
tar Jcvf /opt/mysql-$(date +%F).tar.xz /usr/local/mysql/data/ //将mysql数据库文件夹进行打包操作。(物理层面的备份)

du -sh /usr/local/mysql/data/
du -sh /opt/mysql-2018-08-30.tar.xz //检查文件大小
mysqldump -u root -p school info > /opt/info.sql //将school库中的info表信息导出放在/opt/info.sql中

mysqldump -u root -p -d school info > /opt/info.sql //将school库中的info表结构导出放在/opt/info.sql中

mysql -u root -p school < /opt/info.sql //将/opt/info.sql中的信息导回数据库school中

mysqldump -uroot -pabc123 school > /opt/school.sql
Mysqldump –uroot –p --databases school mysql > /opt/school.sql //将school和mysql库下的信息保存到/opt/school.sql文件夹下
Mysqldump –uroot –p –all-databases
Source /opt/school.sql; //在数据库中倒回文件

mysqldump –uroot –pabc123 school > school.sql
提前创建数据库school
mysql -u root –p123 school < school.sql

mysqldump -u root -p --databases school > school.sql
无需提前创建数据库
mysql -u root –p123 < school.sql

mysqlbinlog --no-defaults mysql-bin.000001 | mysql -uroot -p //增量还原

原文地址:http://blog.51cto.com/13842738/2176976

时间: 2024-08-05 13:34:57

mysqls数据库的常用管理命令的相关文章

Vertica数据库常用管理命令汇总

1.查询数据库是否有等待 select * from resource_queues where node_name=(select node_name from nodes order by node_name limit 1) order by queue_entry_timestamp desc; 2.查当前数据库执行的sql(包含在队列里等待的) select substr(current_statement, 1, 200), count(1) from sessions where

MySQL 常用管理命令

1.连接服务器登录 >mysql -h 192.168.0.11 -u root -p 2. 修改用户密码 >mysqladmin -u root -p 654321 password 123456 3.用户权限管理 1) grant on命令用于增加新用户并控制其权限. grant select,insert,update,delete on *.* to [[email protected]”%][email protected]”%[/email]” Identified by “abc

Oracle常用管理命令总结

概览: 1.Oracle 内存管理 2.Oracle 数据库启动关闭 3.Oracle 参数文件 4.Oracle 控制文件 5.Oracle redo日志文件 6.Oracle undo表空间管理 7.Oracle 普通表空间和数据文件 8.Oracle 临时表空间 9.Oracle 锁管理 10.Oracle用户管理 1.Oracle 内存管理 1.1内存自动管理 11g:AMM 10g:ASMM 1.2修改sga大小 SQL> alter system set sga_target=1M;

docker专题(2):docker常用管理命令(上)

http://segmentfault.com/a/1190000000751601 本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备忘记录下来. 根据自己的理解,总的来说分为以下几种: 容器生命周期管理 — docker [run|start|stop|restart|kill|rm|pause|unpause] 容器操作运维 — docker [ps|inspect|top|attach|events|logs|wait|ex

mysql 第十五篇文章~mycat常用管理命令

一 简介:今天咱们来聊聊mycat的管理功能二 前沿:mycat的常用管理命令需要掌握三 常用命令:   1 登录命令: mysql -uuser -ppassword -P 9066 -h 127.0.0.1 mycat管理用户的配置在server.xml中   2 Show @@backend ;查看后端host列表   3 show @@heartbeat;       | NAME | TYPE | HOST | PORT | RS_CODE | RETRY | STATUS | TIM

Oracle 11g常用管理命令(用户、表空间、权限)

PS:下面是Oracle 11g最常用的基本管理命令,包括创建用户.表空间,权限分配等.以下命令本人都验证操作过,并加上了本人的小结与说明. 1.启动oracle数据库: 从root切换到oracle用户进入: su - oracle 进入sqlplus环境,nolog参数表示不登录: sqlplus /nolog 以管理员模式登录: sqlplus / as sysdba 启动数据库 startup; 停止数据库 shutdown immediate 远程连接数据库 sqlplus /nolo

docker常用管理命令

本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备忘记录下来. 根据自己的理解,总的来说分为以下几种: 容器生命周期管理 - docker [run|start|stop|restart|kill|rm|pause|unpause] 容器操作运维 - docker [ps|inspect|top|attach|events|logs|wait|export|port] 容器rootfs命令 - docker [commit|cp|d

linux常用管理命令使用

1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示. 常用的命令:ls, cd, pwd, mkdir, cp, rm, mv, touch, cat, more, less, head, tail, du, wc ls: -A :列出当前目录全部的文件,连同隐藏档,但不包括 . 与 .. 这两个目录 -d :仅列出目录本身,而不是列出目录内的文件数据  -h :将文件容量以人类较易读的方式(例如 GB, KB 等等)列出来  -i :列出 inode 号码,inode 

perl 常用管理命令

#主要记录工作中经常使用的perl管理命令 安装第三方模块: yum install cpan cpan $module_name 查看已安装的模块: 第一种方法>> perldoc -t perllocal|grep "Module" 第二种方法>> cpan ExtUtils::Installed instmodsh #输入l 可查看到当前已经安装的所有模块 #cpan网址:https://metacpan.org/