mysql数据库基本操作以及备份
admin
2023-05-28 22:21:23
0

1.基本查看及登录:

mysql -uroot -p

show  databases;  ##查看数据库

 mysql数据库基本操作以及备份

use mysql;   ##进入数据库mysql

show tables;  ##查看表

mysql数据库基本操作以及备份 

desc user;  ##查看表的结构,表头

mysql数据库基本操作以及备份 

2.表的操作:查,改,删,增

select * from  user \G;  ##查询user表中的所有数据记录

mysql数据库基本操作以及备份 

select host,user,password from user;  ##指定user表的字段进行查询

mysql数据库基本操作以及备份 

update mysql.user set password=password("123123") where user="root"; ##修改root密码

mysql数据库基本操作以及备份 

 

delete from mysql.user where user="";   ##删除用户为空的数据记录

 mysql数据库基本操作以及备份

create database auth;  ##创建库auth

create table auth.users(user_name char(16) not null, user_passwd char(48) default '',primary key (user_name)); ##创建表auth.users

mysql数据库基本操作以及备份 

 

insert into auth.users values('hehe','pwd@123'); ##新增记录

 mysql数据库基本操作以及备份

drop table auth.users;  ##删除表users

mysql数据库基本操作以及备份 

drop database auth;     ##删除库auth

mysql数据库基本操作以及备份 

3.mysql的权限管理

grant all on .* to 用户@客户机地址 identified by ‘密码’;

mysql数据库基本操作以及备份 

mysql数据库基本操作以及备份 

show grants for 用户@客户机地址;

revoke 权限列表 on  .* from 用户@客户机地址;

grant select,delete on mysql.user to 'useradm'@'192.168.100.100' identified by '123123';

show grants for 'useradm'@'192.168.100.100';

mysql数据库基本操作以及备份 

revoke select,delete on mysql.user from 'useradm'@'192.168.100.100';

mysql数据库基本操作以及备份 

delete from mysql.user where user='useradm';

mysql数据库基本操作以及备份 

flush privileges; 

4.备份与恢复mysql

登录到mysql

create  database auth;

Quit

mysql数据库基本操作以及备份 

/etc/init.d/mysqld stop

cd /usr/local/mysql/data

cp -rf mysql/user.* auth/

mysql数据库基本操作以及备份 

chown mysql:mysql auth/ -R

chmod 755 auth

chmod 660 auth/*

mysql数据库基本操作以及备份 

/etc/init.d/mysqld start

mysql数据库基本操作以及备份 

登录mysql

use auth;

show tables;   ##能看到user表,desc能查看结构,select

mysql数据库基本操作以及备份

 

mysql的冷备份:

/etc/init.d/mysqld stop

tar Jcf /opt/mysql-bak-$(date +%F).tar.xz /usr/local/mysql/data

mysql数据库基本操作以及备份 

模拟故障:

/etc/init.d/mysqld start

mysql数据库基本操作以及备份 

mysql登录

drop database auth;

quit;

 

mysql数据库基本操作以及备份

mysql数据库基本操作以及备份 

/etc/init.d/mysqld stop

mysql数据库基本操作以及备份 

mysql恢复:

tar Jxf /opt/mysql-bak-*.tar.xz -C /root

mysql数据库基本操作以及备份 

cd /root/usr/local/mysql/data

cp -rf auth/  /usr/local/mysql/data

mysql数据库基本操作以及备份 

chown mysql:mysql /usr/local/mysql/data/auth  -R

cd /usr/local/mysql/data

chmod 755 auth

chmod 660 auth/*

mysql数据库基本操作以及备份 

/etc/init.d/mysqld  start

mysql登录验证

show databases;  ##数据已经恢复

mysql数据库基本操作以及备份 

 

在线备份;mysqldump

netstat -utpln |grep 3306 ##确保mysql启动

mysql数据库基本操作以及备份 

mysqldump -uroot -p123123 --all-databases >/opt/all.sql  #备份

mysql数据库基本操作以及备份 

mysqldump -uroot -p123123 --all-databases --lock-talbes=0 >/opt/all.sql

mysql -uroot -p123123 恢复

bash中操作mysql:去交互

vi /root/test.sh

mysql -uroot -p123123 <

create database hehe;

END

:wq

chmod +x /root/test.sh

/root/test.sh

mysql数据库基本操作以及备份 

5.mysql忘记密码的解决方案:

vim /etc/my.cnf

[mysqld]

skip-grant-tables  ##添加该行,跳过密码验证

:wq

/etc/init.d/mysqld restart

mysql  ##登录后操作

mysql数据库基本操作以及备份 

update mysql.user set password=password("123123") where user="root"; ##修改root密码

Exit

mysql数据库基本操作以及备份 

vim /etc/my.cnf

[mysqld]

#skip-grant-tables  ##注释该行

:wq

/etc/init.d/mysqld restart

mysql数据库基本操作以及备份 

6.单独管理用户:

用户管理

mysql>use mysql;

mysql> select host,user,password from user ;

mysql数据库基本操作以及备份 

mysql>create user linuxfan identified by '123123';  ##identified by 会将纯文本密码加密作为/散列值存储

mysql数据库基本操作以及备份 

mysql>rename   user  linuxfan to   fage##mysql 5之后可以使用,之前需要使用update 更新user

mysql数据库基本操作以及备份 

mysql> set password for fage=password('123'); ##:需在mysql.user 表中使用

mysql数据库基本操作以及备份 

mysql> update  mysql.user  set  password=password('123')  where user='fage';##

指定表中数据的根位置,无需进入表。

mysql数据库基本操作以及备份 

mysql> show grants for fage;查看用户权限

mysql数据库基本操作以及备份 

mysql> grant select on mysql.user to fage; ##赋予权限

mysql数据库基本操作以及备份 

mysql> revoke select on mysql.user from fage;  ##如果权限不存在会报错

mysql数据库基本操作以及备份 

mysql>drop user fage;   ##mysql5之前删除用户时必须先使用revoke 删除用户权限,然后删除用户,mysql5之后drop 命令可以删除用户的同时删除用户的相关权限

mysql数据库基本操作以及备份 

7.设置mysql5.5显示中文名:

vi /etc/my.cnf

[client]

default-character-set = utf8

[mysqld]

character-set-server = utf8

init_connect='SET NAMES utf8'

:wq

/etc/init.d/mysqld restart


相关内容

热门资讯

1300亿元人民币,阿根廷:同... 据凤凰卫视报道,阿根廷中央银行8月5日宣布,与中国人民银行延长货币互换协议,规模为1300亿元人民币...
北京化工大学实验室发生安全事故... 8月5日凌晨,北京化工大学发生一起实验室安全事故,一名硕士研究生在实验过程中左手严重受伤。
“婚外胚胎案”原配朱女士回应胚... 近日,“患癌妻子申请销毁丈夫婚外胚胎遭拒案”持续引发关注。就在昨天(8月5日)下午,“患癌妻子朱女士...
马克龙称欧盟及其伙伴将继续加大... 【环球网报道 记者 张江平】据俄罗斯《共青团真理报》报道,对于法国总统马克龙发表关于加大向俄罗斯施压...
韩国外长称将为重启韩朝对话创造... 据凤凰卫视报道,韩国外交部长官赵显8月5日总统工作报告后召开记者会。有关朝鲜问题,他表示,为奠定半岛...
比矿泉水还轻的12英寸平板:华... 【环球网科技报道 记者 张阳】平板电脑市场近年来的发展并不乐观,据国际数据公司(IDC)预测,202...
“一箭双星” 捷龙三号海上发射... 封面新闻记者 边雪 8月5日10时38分,捷龙三号运载火箭在山东海阳附近海域点火升空,随后以“一箭双...
这届AI办公,名字比产品还难用 头图及封面来源 | GPT ChatGPT Work、Claude Cowork、Microsoft...
2026年8月12日地球将失去... 今年早些时候,一则“2026年8月12日地球将失重7秒、数千万人因此伤亡”的所谓“末日警告”在网络热...