linux中mysql数据库的基本管理

###### 1.数据库的介绍 ######

1.什么是数据库 数据库就是个高级的表格软件

2.常见数据库 Mysql Oracle mongodb  db2 sqlite sqlserver .......

3.Mysql (SUN  -----> Oracle)

4.mariadb

###### 2.mariadb的安装 ######

dnf install mariadb-server.x86_64 -y

###### 3.软件基本信息 ######

mariadb.service    启动服务

3306                      默认端口号

/etc/my.cnf           主配置文件

/var/lib/mysql       数据目录,当需要重新安装mariadb时需要清理此目录或备份

###### 4.数据库开启  ######

systemctl enable --now mariadb

###### 5.数据库的安全初始化 ######

1.关闭数据库开放端口

vim /etc/my.cnf

[mysqld]

skip-networking=1

systemctl start mariadb

netstatus -antlupe  | grep mysql   此命令查询不到端口

2.执行安全初始化脚本

mysql_secure_installation

[root@Mariadb ~]# mysql      默认不需要密码,初始化完毕后需要 ERROR 1045 (28000): Access denied for user'root'@'localhost' (using password: NO)

[root@Mariadb ~]# mysql -uroot -p        -u 指定登陆用户 -p 密码

###### 6.数据库的基本管理 ######

1.查看

SHOW DATABASES;    显示库名称

USE mysql;                    进入mysql库

SHOW TABLES;           显示库中的所有表

SELECT * FROM user;     查询所有数据

SELECT Host,User,Password FROM user; 查询指定字段

2.新建

CREATE DATABASE westos;                  新建库

CREATE TABLE linux (

username varchar(6) not null,

password varchar(30) not null );               新建表

DESC linux;                                                 显示表结构

INSERT INTO linux VALUES ('user1','123'); 插入数据

FLUSH PRIVILEGES;                                     刷新数据库

3.更改

ALTER TABLE redhat RENAME linux;                                      更改表的名字

ALTER TABLE linux ADD age  varchar(10) AFTER password;     更改数据,名字为age,长度为10,位置在password之后

ALTER TABLE linux DROP age;                                                  

UPDATE linux SET password='g' WHERE username='user2';

4.删除

DELETE FROM linux WHERE username='lue'; 删除数据

DROP TABLE linux;                                           删除表

DROP DATABASE westos;                                 删除库

###### 7.数据密码管理 ######

1.数据密码更改

mysqladmin  -uroot -p1234 password 12345

2.数据库密码破解

systemctl stop mariadb

mysqld_safe --skip-grant-tables &

UPDATE mysql.user set Password=password('123') WHERE  User='root';                          RHEL7

UPDATE mysql.user set authentication_string=password('123') WHERE  User='root';      RHEL8

FLUSH PRIVILEGES;

kill -9 mysql的所有进程

systemctl start mariadb

###### 8.用户授权 #####

CREATE USER linux@localhost identified by '1234';    只能用localhost登陆

CREATE USER lee@'%'  identified by '1234';        可以通过网络或localhost 登陆

GRANT INSERT,SELECT  on westos.* TO linux@localhost;   授权

SHOW GRANTS for linux@localhost;

REVOKE SELECT ON westos.* FROM linux@localhost;     去掉SELECT功能

DROP USER linux@localhost;           删掉用户

CREATE USER lee@localhost identified by '1234';    只能用localhost登陆

CREATE USER lee@'%'  identified by '1234';        可以通过网络或localhost 登陆

GRANT INSERT,SELECT  on westos.* TO linux@localhost;   授权

REVOKE SELECT ON westos.* FROM linux@localhost;     去掉SELECT功能

DROP USER linux@localhost;           删掉用户

###### 9.数据库的备份 #####

mysqldump -uroot -p1234 --all-database  备份所有数据

mysqldump -uroot -p1234 --all-database --no-data

mysqldump -uroot -p1234 westos               备份库

mysqldump -uroot -p1234 westos > /mnt/westos.sql      将库的数据导入

mysql -uroot -p1234 -e "create database westos;"            建立库

mysql -uroot -p1234 westos < /mnt/westos.sql                将数据导入库中

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值