Linux基础——数据库

一、安装初始化
安装数据库软件
(若不知道数据库的安装包
yum search mariadb)

yum install mariadb-server.x86_64  -y

开启服务、登陆查看

systemctl start mariadb

这里写图片描述
查看数据库接口

netstat -antlpe | grep mysql

这里写图片描述
关闭防火墙,在另一台主机登陆本主机数据库:

systemctl stop firewalld
mysql -uroot -h172.25.254.108

服务不被允许:

将数据库进行安全初始化
由于其他主机能够通过查看本机端口以连接本机数据库,为使安全则进行安全初始化。
1、编辑数据库配置文件

vim /etc/my.cnf
10 skip-networking=1
systemctl restart mariadb

把数据库在网络开启的功能跳过
这时候再查看数据库信息:不显示端口

netstat -antlpe | grep mysql

这里写图片描述

2、编辑安全初始化脚本
使登陆数据库时使用密码登陆

mysql_secure_installation

这里写图片描述
回车-Y-输入密码-再次输入密码-回车-回车-回车-回车

二、数据库软件的使用
输入密码登陆

mysql -uroot -p

这里写图片描述
查询数据库

MariaDB [(none)]> SHOW DATABASES;

这里写图片描述
使用mysql数据库

MariaDB [(none)]> USE mysql

查询mysql数据库的表格

MariaDB [mysql]> SHOW TABLES;

这里写图片描述
查询user表格里的所有内容

MariaDB [mysql]> SELECT * FROM user;

这里写图片描述
查询user表格里root属性的User,Host等字段

MariaDB [mysql]> SELECT User,Host,Password,Select_priv FROM user Where User='root';

这里写图片描述
查询user表格中的所有字段

MariaDB [mysql]> DESC user;

这里写图片描述

三、建立数据库、表格
建立westos数据库并查看

MariaDB [(none)]> CREATE DATABASE westos;
MariaDB [(none)]> SHOW DATABASES;

这里写图片描述
建立linux表格并查看

MariaDB [(none)]> USE westos;
MariaDB [westos]> CREATE TABLE linux(
    -> username varchar(6) not null,
    -> password varchar(50) not null);
username          varchar(6)         not null
  字段             可变长类型           不能为空
MariaDB [westos]> SHOW TABLES;
MariaDB [westos]> DESC linux;

这里写图片描述
添加linux表格中的内容并查看

MariaDB [westos]> INSERT INTO linux values('lee','123');
MariaDB [westos]> INSERT INTO linux values('tom','456');
MariaDB [westos]> SELECT * FROM linux;

这里写图片描述

四、数据库结构管理
修改表的名字

MariaDB [westos]> ALTER TABLE linux RENAME messages;
MariaDB [westos]> SHOW TABLES;

这里写图片描述
修改表的结构
在linux表格中添加age字段

MariaDB [westos]> ALTER TABLE linux ADD AGE varchar(4);
MariaDB [westos]> SELECT * FROM linux;

在linux表格中移除age字段

MariaDB [westos]> ALTER TABLE linux DROP AGE;

这里写图片描述
在linux表格中的username字段后添加age字段
注:不能放在最前端,会直接改变整体结构

MariaDB [westos]> ALTER TABLE linux ADD age varchar(4) after username;
MariaDB [westos]> SELECT * FROM linux;

在linux表格中移除age字段

MariaDB [westos]> ALTER TABLE linux DROP AGE;

这里写图片描述

五、数据库数据管理
更改数据 UPDATE

MariaDB [westos]> UPDATE linux SET username='hello' WHERE password='123';
MariaDB [westos]> SELECT * FROM linux;

这里写图片描述
删除数据

MariaDB [westos]> DELETE from linux WHERE username='hello';
MariaDB [westos]> SELECT * FROM linux;

这里写图片描述
删除数据表

MariaDB [westos]> DROP table linux;

这里写图片描述
删除数据库

MariaDB [westos]> DROP DATABASE westos;
MariaDB [(none)]> SHOW DATABASES;

这里写图片描述

六、网页数据库
安装服务

[root@localhost ~]# yum install php httpd php-mysql.x86_64 -y

开启服务、关闭防火墙

systemctl start httpd
systemctl stop firewalld

获得安装包、解压安装包

tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2

这里写图片描述
为使方便更改名字

mv phpMyAdmin-3.4.0-all-languages/ mysqladmin

快速安装php安装包

cd mysqladmin/
cp config.sample.inc.php config.inc.php 

重看是否安装
浏览器输入http://172.25.254.108/mysqladmin
这里写图片描述

七、数据库用户和访问权限
登陆网页数据库
这里写图片描述
使用网页数据库在westos数据库中建立linux表
这里写图片描述
创建用户

MariaDB [(none)]> CREATE USER jing@'localhost' identified by 'jing';  ##'localhost' 本机登陆 '%'任意主机登陆  identified 密码

查看能登陆用户

MariaDB [(none)]> SELECT User FROM mysql.user;

这里写图片描述
用户登陆授权

MariaDB [(none)]> GRANT SELECT on westos.* to lee@localhost;
此时能用用户名jing 密码jing登陆

用户更改内容授权

MariaDB [(none)]> GRANT UPDATE on westos.* to jing@localhost;

这里写图片描述
此时能修改表格内容
这里写图片描述
查看用户授权

MariaDB [(none)]> SHOW GRANTS FOR jing@localhost;

这里写图片描述
撤销用户权限

MariaDB [(none)]> REVOKE UPDATE on westos.* from jing@localhost;

删除用户

MariaDB [(none)]> DROP USER jing@localhost;
MariaDB [(none)]> SELECT User FROM mysql.user;

这里写图片描述

八、修改数据库密码
当忘记数据库密码时,先关闭服务

systemctl stop mariadb

跳过授权表无密码登陆

mysqld_safe --skip-grant-tables &     ##跳过认证服务

这里写图片描述
查看加密内容

MariaDB [mysql]> SELECT * FROM user;  

原来的密码字符
修改密码

MariaDB [mysql]> update mysql.user set Password=password('123') where User='root'; ##密码明文显示

这里写图片描述
把认证服务调回前台并打入后台结束进程
这里写图片描述
查看mysql进程,结束mysql进程
这里写图片描述
开启服务,使用修改后的密码登陆
这里写图片描述

九、数据库的备份
数据库密码的修改

mysqladmin -uroot -p12345 password '123'

这里写图片描述
备份数据库方式

mysqldump -uroot -predhat --all-database > /mnt/westos.all   ##所有数据库资料备份
mysqldump -uroot -predhat --all-database --no-data > /mnt/westos.err  ##只备份数据结构,不备份数据
mysqldump -uroot -predhat westos > /mnt/westos.sql  ##指定westos数据库的资料备份

实验:
先备份,然后删除数据库

mysqldump -uroot -predhat westos > /mnt/westos.sql

这里写图片描述

mysql -uroot -plee -e "DROP DATABASE westos;"
mysql -uroot -plee -e "SHOW DATABASES;"

这里写图片描述
方法一
修改备份文件

vim /mnt/westos.sql
 21 CREATE DATABASE westos;
 22 USE westos; 

这里写图片描述
将备份的资料恢复,查看数据库资料是否恢复

mysql -uroot -plee < /mnt/westos.sql
mysql -uroot -plee -e "select * from westos.linux;"

这里写图片描述
方法二
先将方法一恢复的数据库删除

mysql -uroot -plee -e "DROP DATABASE westos;"

这里写图片描述
将方法一修改的备份文件注释

vim /mnt/westos.sql 
 21 /*CREATE DATABASE westos;
 22 USE westos;*/

这里写图片描述
建立数据库

mysql -uroot -plee -e "CREATE DATABASE westos;"

将备份数据库资料直接导入数据库中

mysql -uroot -plee westos < /mnt/westos.sql

查看数据库资料是否恢复

mysql -uroot -plee -e "select * from westos.linux;"

这里写图片描述

离线写博客

即使用户在没有网络的情况下,也可以通过本编辑器离线写博客(直接在曾经使用过的浏览器中输入write.blog.csdn.net/mdeditor即可。Markdown编辑器使用浏览器离线存储将内容保存在本地。

用户写博客的过程中,内容实时保存在浏览器缓存中,在用户关闭浏览器或者其它异常情况下,内容不会丢失。用户再次打开浏览器时,会显示上次用户正在编辑的没有发表的内容。

博客发表后,本地缓存将被删除。 

用户可以选择 把正在写的博客保存到服务器草稿箱,即使换浏览器或者清除缓存,内容也不会丢失。

注意:虽然浏览器存储大部分时候都比较可靠,但为了您的数据安全,在联网后,请务必及时发表或者保存到服务器草稿箱

猜你喜欢

转载自blog.csdn.net/weixin_41927237/article/details/80518158