标签:order 操作 保存 唯一索引 word open values efault where
库,表管理事务,视图
事务:一组操作共同执行或者都不执行,结果保持一致
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 //增量还原
标签:order 操作 保存 唯一索引 word open values efault where
原文地址:http://blog.51cto.com/13842738/2176976