惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
量子位
Recent Announcements
Recent Announcements
T
The Blog of Author Tim Ferriss
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
宝玉的分享
宝玉的分享
大猫的无限游戏
大猫的无限游戏
V
Visual Studio Blog
博客园 - 聂微东
aimingoo的专栏
aimingoo的专栏
Microsoft Security Blog
Microsoft Security Blog
U
Unit 42
J
Java Code Geeks
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
IT之家
IT之家
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
L
LangChain Blog

HelloDog

字节跳动和TikTok内推 nftables代替iptables的新一代防火墙配置指南 新加坡女佣申请中国签证 新加坡信用卡cashback和miles的使用心得 关于AI的基础知识和第三方AI应用 新加坡政府小学报名和学区房义工的选择分析 新加坡幼儿园和托儿所的报名准备经验分享 新加坡政府学校和国际学校的上学路径分析 新加坡聘请女佣的流程和注意事项 AdGuard过滤规则分享 新加坡宽带套餐选择推荐和路由器配置经验分享 MacBook从mac intel升级到apple silicon 使用GitHub和Hexo搭建免费静态Blog macOS使用iterm2启用rz与sz功能 Git常用命令和Git团队使用规范指南 新加坡保险和理财规划 新加坡生娃和养娃的重要时间线记录 新加坡申请LTVP的流程介绍 新加坡生小孩的医院和流程费用介绍
MySQL使用mysqldump导出和导入数据常用命令
wsgzao · 2023-05-17 · via HelloDog

前言

每次有需求就需要搜索Google,重复的次数多了还是记录下自己实际要用的mysql和mysqldump常用命令留作参考,另外官方也宣布MySQL 5.7将于2023年10月21日结束生命周期,大家也要开始推动MySQL 8.0以上版本的升级。

更新历史

2023年05月17日 - 初稿

阅读原文 - https://wsgzao.github.io/post/mysql/


mysql创建用户和登录授权

  1. 公有云需要设置数据安全ACL白名单策略
  2. 内网环境需要设置授权访问策略
1
2
3
4
# 登录
mysql -h连接地址 -P端口 -u用户名 -p密码
mysql -h<host> -P3306 -u<user> -p

登录参数说明

  • 大写字母P代表端口,小写字母p代表密码。
  • 输入用户名和密码时,需要在-u和-p后面直接输入,不可以有空格。
  • -p后面也可以不用输入密码,执行命令后再输入,以防止密码明文显示。

MySQL 8.0有新的安全要求,不能像之前的版本那样一次性创建用户并授权需要先创建用户,再进行授权操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 创建新用户
# 其中username为自定义的用户名;host为登录域名,host为'%'时表示为 任意IP,为localhost时表示本机,或者填写指定的IP地址;paasword为密码
create user 'username'@'host' identified by 'password';

# 为用户授权
# 其中*.*第一个*表示所有数据库,第二个*表示所有数据表,如果不想授权全部那就把对应的*写成相应数据库或者数据表;username为指定的用户;%为该用户登录的域名
grant all privileges on *.* to 'username'@'%' with grant option;

# 授权之后刷新权限
flush privileges;

# 撤销授权

#收回权限(不包含赋权权限)
REVOKE ALL PRIVILEGES ON *.* FROM user_name;
REVOKE ALL PRIVILEGES ON user_name.* FROM user_name;
#收回赋权权限
REVOKE GRANT OPTION ON *.* FROM user_name;

#操作完后重新刷新权限
flush privileges;

# 删除用户
drop user 用户名@'登陆地址';

mysql导出和导入常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 数据库导出
mysqldump -uroot -h192.168.1.101 -p dbtest > dbtest.sql
# 数据库导入
mysql -uroot -h192.168.1.101 -p dbtest < /tmp/dbtest.sql --default-character-set=utf8mb4
# 数据表复制
CREATE TABLE new_table SELECT * FROM old_table;
# 表格重命名
RENAME TABLE old_table TO new_table;


# 导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
# 导出数据库中某个表
mysqldump -u 用户名 -p 数据库名 表名 > 导出的文件名
# 导出一个数据库结构(-d 没有数据)
mysqldump -u 用户名 -p -d 数据库名 > 导出的文件名

mysqldump -u root -p test > test.sql
mysqldump -u root -p test users > test_users.sql
mysqldump -u root -p -d test > test.sql

参考文章

mysql — The MySQL Command-Line Client

mysqldump — A Database Backup Program

通过客户端、命令行连接RDS MySQL实例