mysql 即查即用


MySQL 是一个关系型数据库管理系统。管理系统,意味着 MySQL 本身不是数据库,而是用来管理数据库的一种软件。利用 MySQL,可以创建众多数据库,这些数据库都统一由 MySQL 来管理。每个数据库可以有不同的访问用户,有不同的权限控制策略。

pic-1

宏观结构上,MySQL 通过 “(数据) –> (数据) –> (数据)字段” 三级结构来管理各种数据,使用 MySQL 时,也是通过这个结构来逐层深入。

0x01 连接 MySQL

成功连接上 MySQL 是所有后续操作的前提。

mysql -u username -p;

注:符号(;)是指令的一部分。

0x02 对各个数据库的管理

0x021 对(数据)库的操作

查看所有数据库:

show databases;

新增一个数据库

CREATE DATABASE databasename(如 wordpress) ;

删除一个数据库

DROP DATABASE databasename(如 wordpress) ;

选中一个数据库;

use wordpress;

选中 wordpress 数据库以备后续进一步操作;

0x022 对(数据)表的操作

查看选中数据库中的所有数据表

show tables;

查看表结构

desc wordpress;

查看 wordpress 表的表结构。

desc 可理解为 decription 的简写,desc 指令查看(数据)表中的字段结构。

0x023 对(数据)字段的操作

可以使用通用的 sql 语句对数据表中的字段进行各种操作。

查看表中的所有内容(字段和字段值)

select * from table_name ;

查看表中某个、某几个字段(某列、某几列)的内容

select column, column from table_name ;

查看表中某个特定记录中的某字段的值

select  期望字段(我们想看到的)  from  目标表  where  记录选择条件

select option_value from wp_options where option_name=’siteurl’;

查看wp_options表中,option_name的值为siteurl的记录中,option_value的值

更新表中某个特定记录中的某字段的值

update  目标表  set  期望字段=‘期望值’(我们想改变的)  where  记录选择条件

update wp_options set option_value=’192.168.1.100′
          where option_name =’siteurl’ or option_name=’home’

0x024 数据库的迁移

数据库迁移是指将 MySQL 内的数据库从一台服务器迁移到另一台服务器,或者从一个环境迁移到另一个环境的过程。通常是为了升级服务器、增加存储空间、提高性能或改变数据库架构。

MySQL 数据库迁移有多种方法,常用方法如下:

使用 mysqldump 导出和导入

1、导出数据:在需要迁移的服务器上,使用 mysqldump 命令导出数据库。

mysqldump -u 用户名 -p密码 数据库名 > 导出文件名.sql

注意:

  • 如果数据库非常大,或者包含大量的表,可以使用 –single-transaction 选项来避免锁定表,这对于InnoDB 存储引擎特别有用。
  • 使用 –quick 选项可以减少内存的使用,特别适用于大型表。
  • 使用 –lock-tables=false 可以避免在导出过程中锁定表,但这可能增加数据不一致的风险。

2、传输文件:将导出的 SQL 文件传输到目标服务器。

以使用 scp 指令为例,

scp 导出文件名.sql 用户@目标服务器 : /path/to/destination/

3、导入数据:在目标服务器上,使用 mysql 命令导入 SQL 文件。

mysql -u 用户名 -p密码 数据库名 < 导入文件名.sql

注意:

  • 如果导入的数据库已经存在并且包含数据,可先在目标数据库上执行一些清理操作,如删除旧数据或重置表。
  • 使用 –force 选项可以忽略一些错误,但这可能会导致数据不一致。
  • 如果导入过程中遇到权限问题,确保目标数据库的用户有足够的权限来创建表和插入数据。

mysqldump 方法的优点:

  • 迁移过程不影响源数据库:导出操作是读取操作,不会对源数据库造成性能影响。
  • 导出的 sql 文件便于传输和存储:sql 文件通常是文本格式,易于传输和备份。
  • 灵活性高:可以在不同的 MySQL 版本和操作系统之间迁移数据。

mysqldump 方法的缺点:

  • 导入速度较慢:特别是对于大型数据库,导入过程可能需要很长时间。
  • 数据量大时可能导致磁盘空间不足:导出的 sql 文件可能会非常大,需要足够的存储空间。
  • 数据一致性风险:在导出和导入过程中,如果源数据库有数据写入,可能会导致数据不一致。

0x03 用户管理

MySQL 的所有用户信息存储在 mysql.user 表中。

查看用户信息

查看用户及其允许连接的主机

select user, host from mysql.user ;

查看特定用户的权限

show GRANTS FOR ‘username’@‘host’ ;

show GRANTS FOR CURRENT_USER ;

新增用户

CREATE USER username@host ;

给用户设置密码

SET PASSWORD FOR username = PASSWORD(“password“) ;

给用户配置数据库访问权限

GRANT ALL PRIVILEGES ON databasename.* TO username IDENTIFIED BY”password” ;
FLUSH PRIVILEGES ;

0x04 退出 MySQL

exit;

\ q;

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇