DBA 数据库管理 部署Mysql 服务,基础查询

数据库:存储数据的仓库

数据库服务软件:

关系型数据库: 存在硬盘 ,制作表格的

数据库的参数

root@mysql50 \~# cat /etc/my.cnf.d/mysql-server.cnf 主配置文件

mysqld

datadir=/var/lib/mysql 存放数据库目录

socket=/var/lib/mysql/mysql.sock 套接字文件存放目录和名字,访问mysql 会启动通过socket建立链接

log-error=/var/log/mysql/mysqld.log 记录服务启动的错误信息

pid-file=/run/mysqld/mysqld.pid 进程号的存放

数据库的命令

select version () 差版本号

select user () 查看用户信息

show database 查看数据库列表

select database () 查看自己在那个库

use sys 进去sys库

show tables 查看库表

命令格式

mysql -hlocalhost -P3306 -uroot -p123456 mysql -h -P -u -p

数据库密码管理

设置密码 操作系统才有权限 mysqladmin -hlocalhost -uroot -p password "tarena"

修改密码 mysqladmin -hlocalhost -P3306 -uroot -ptarena password "新密码"

破解密码 : 1.修改主配置 文件 不验证密码 skip-grant-tables

2.删除mysql不知道密码 查看存放密码列名 authentication_string

update mysql.user set authentication_string="" where user="root" and host="localhost";

mysql> select host , user , authentication_string from mysql.user where user="root";

3.重启服务 修改主配置 #skip-grant-tables

4.重新设置密码 也可以mysql> alter user root@"localhost" identified by "NSD2024...a";

select 查看的用法

select 字段列表 from 库名.表名

行号 用户名 密码 uid gid 用户说名 家目录 解释器

id name password uid gid comment homedir shell

select 字段列表 from 库名.表名 where 筛选条件

筛选条件

in (值列表) //在...里

not in (值列表) //不在...里

between 数字1 and 数字2 //在...之

  1. mysql> select name , uid from tarena.user where uid in (1 , 3 , 5 , 7);
  2. mysql> select name , shell from tarena.user where shell not in ("/bin/bash","/sbin/nologin");
  3. mysql> select id , name , uid from tarena.user where id between 10 and 20 ;

模糊匹配

where 字段名 like "表达式";

通配符 _ 表示 1个字符 % 表示零个或多个字符

正则匹配

select 字段名列表 from 库名.表名 where字段名 regexp '正则表达式';

^ 匹配行首

$ 匹配行尾

\[\] 匹配范围内任意一个

* 前边的表达式出现零次或多次

| 或者

. 任意一个字符

  1. mysql> select name from tarena.user where name regexp "0-9";
  2. mysql> select name from tarena.user where name regexp "^r|t$";

逻辑比较

有两个或2个以上的筛选条件

逻辑与 and (&&) 多个判断条件必须同时成立

逻辑或 or (||) 多个判断条件其中某个条件成立即可

逻辑非 not (!) 取反

() 提供优先级 放在()里的优先被处理

or 和and 判断同时出现 and 的优先级高于or

select name , uid from tarena.userwhere (name = "root" or name = "bin") and uid = 1 ;

别名/去重/合并

  1. mysql> select concat(name , "-" , uid) as 用户信息 from tarena.user where uid <= 5;
  2. mysql> select name as 用户名 , homedir 家目录 from tarena.user;
  3. mysql> select distinct shell from tarena.user where shell in ("/bin/bash","/sbin/nologin")

空 is null 表头下没有数据

非空 is not null 表头下有数据

select name from user where shell is null;

  1. mysql> insert into tarena.user(id,name) values(71,""); //零个字符
  2. mysql> insert into tarena.user(id,name) values(72,"null");//普通字母
  3. mysql> insert into tarena.user(id,name) values(73,NULL); //表示空

安装图形软件

安装图形化软件,可以访问图形工具对数据库进行访问

在数据库服务器里创建普通用户

    • 创建库
    • mysql> create database gamedb;
    • 创建用户
    • mysql> create user plj@"localhost" identified by "123456";
    • 授权权限
    • mysql> grant all on gamedb.* to plj@"localhost" ;
相关推荐
可涵不会debug4 分钟前
C++ std::bind 实战教程:线程池、回调场景全覆盖
linux·开发语言·c++
猎头南楼18 分钟前
企业网络安全体系与AI安全检测实践:零信任、纵深防御与LLM安全
人工智能·安全·web安全
Summer-Bright36 分钟前
深度 | 壁仞1.74亿中标智算中心:国产GPU从能用跨进商用,但4.5亿的大单却因凑不齐三家废标了
数据库·ai·国产gpu
青梅味猪大肠41 分钟前
【操作系统-26】进程互斥软件实现-Peterson算法
linux·运维·服务器
云安全助手42 分钟前
自建接入VS聚合平台:企业 AI 调用的选型思路与迁移成本拆解
java·大数据·数据库·人工智能·ai大模型
bing.shao1 小时前
当模型也会越狱:英伟达 Open Agent Safety Platform 与「双层带外」全栈智能体安全架构深度解析
人工智能·安全·安全架构
白露与泡影1 小时前
Redis 的“单线程”与“多线程”:一场关于性能与简洁的权衡
数据库·redis·php
喵个咪1 小时前
GoWind Admin|风行 — 开箱即用的企业级全栈中后台框架:六类审计日志与等保合规
后端·安全·go
wdfk_prog1 小时前
Wi-Fi Direct教程 01:在 Ubuntu 搭建双 mac80211_hwsim + wpa_supplicant 2.12
linux·运维·服务器·ubuntu·ros·wifi-direct
白起那么早1 小时前
idea 插件-把数据库的表画出来
数据库·后端·intellij idea