Linux学习笔记—数据库mysql

1.安装

yum search mariadb                      ##查找数据库安装包
yum install mariadb-server.x86_64 -y    ##安装数据库服务
systemctl start mariadb                 ##重启服务
systemctl enable mariadb                ##使开机自启

示图:查找数据库安装包
这里写图片描述

2.安全初始化

默认情况下,数据库的网络接口是打开状态。
为保证安全,需要关闭此接口。
(1)关闭接口

vim /etc/my.cnf                  ##主配置文件
6 skip-networking=1              ##设置检测时略过mysql,使监听端口无法监测到mysql的端口
systemctl restart mariadb        ##重启服务
netstat -antlpue | grep mysql    ##监听端口,无法监测到mysql端口

示图:监听数据库端口3306
这里写图片描述
示图:配置文件更改
这里写图片描述

(2)安全初始化

mysql_secure_installation             ##安全初始化过程,设置mysql登陆
mysql -uroot -p                       ##登陆数据库,回车键,输入密码

设置mysql登陆过程:

mysql_secure_installation                          ##设置mysql登陆
Enter current password for root (enter for none):  ##是否为root设置登陆密码
Set root password? [Y/n] y                         ##设置登陆密码
New password:
Re-enter new password:
Password updated successfully!
Remove anonymous users? [Y/n] y                    ##禁止匿名用户登陆
 ... Success!
Disallow root login remotely? [Y/n] y  ##          ##禁止远程登陆
 ... Success!
Remove test database and access to it? [Y/n] y     ##禁止使用并进行数据测试
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!
Reload privilege tables now? [Y/n] y               ##更新数据库
 ... Success!

示图:用户密码登陆成功
这里写图片描述

3.mysql配置文件

/etc/my.cnf                ##主配置文件
/etc/my.cnf.d/server.cnf   ##子配置文件(内容为空)

4.mysql使用命令

mysql;                          ##无密码登陆数据库
mysql -uroot -p;                ##root用户登陆数据库
use mysql;                      ##进入mysql数据库
show databases;                 ##显示databases中所有的库,任何命令必须以“;”结尾   
show tables;                    ##显示当前数据库的所有表 
select * from user;             ##显示所有字段的数据(字段指列)
select Host,User from user;    ##显示user表中Host和User字段的数据
select Host,User from user where Host='::1';  ##显示user表中Host='::1'的Host和User字段的数据
desc user;                      ##显示当前数据库的所有字段,查看user表的数据结构 
quit;                           ##退出数据库

示图:显示databases中所有的库
这里写图片描述
示图:显示数据库的所有表
这里写图片描述
示图:显示user表中Host、User和Password字段的数据
这里写图片描述
示图:显示user表中Host=’::1’的Host和User字段的数据
这里写图片描述
示图:查看user表的数据结构
这里写图片描述

5.数据库的管理

(1)创建数据库

MariaDB [(none)]> create database westos;    ##创建westos数据库
MariaDB [(none)]> use westos;                ##使用westos数据库              
MariaDB [westos]>create table linux(         ##在westos数据库创建表,字段包括username,password
-> username varchar(15) not null,            ##指定username的字符长度不可超过15个,字符类型为varchar,并且不许为空
-> password varchar(15) not null             ##同上
-> );

具体实验步骤如下:
<1>创建westos数据库,并查看新建的westos数据库
这里写图片描述
<2>使用数据库,列表显示为空
这里写图片描述
<3>在数据库westos中新建linux表,字段分别为username、password
这里写图片描述
<4>查看linux表的数据结构
这里写图片描述
(2)插入

insert into linux values ('hao','123');    ##在linux表中插入值为username = hao,password = 123

<5>在linux列表中插入用户hao,hao1,密码分别为123,456
这里写图片描述
(3)更改

update linux set password=password('111') where username='hao'; ##更新linux表中hao的密码为111
alter table linux rename messages;                         ##表linux重命名为messages
altertable table linux add class varchar(10);              ##添加class字段到linux表中
altertable table linux add age varchar(10) after password; ##在password字段后添加age字段到linux表中
alter table linux drop age;                                ##删除linux表中的age字段

<6>更新linux表中hao的密码为111
这里写图片描述
<7>在linux表中username字段后添加age字段
这里写图片描述
<8>删除linux中的age字段
这里写图片描述
<9>将linux表重命名为messages
这里写图片描述
(4)删除

delete from linux where username='lee1' and password='789'; ##删除linux表中 username='lee1'和 password='789'对应表项
delete from linux;                  ##删除linux表中所有字段内(表格依旧存在)
drop table linux;                   ##删除linux表
drop database westos;               ##删除westos数据库

<10>删除表格中username=hao
这里写图片描述
<11>删除linux表格中所有字段
这里写图片描述
这里写图片描述
<12>删除linux表
这里写图片描述
<13>删除westos数据库
这里写图片描述
(5)用户授权

create user lee@localhost identified by 'lee';     ##建立本地用户,密码lee,@ip远程用户
grant select on *.* to lee@localhost;              ##针对*.*授权用户select功能(*.*所有库所有表,westos.linux表示westos数据库的linux表格)
grant select,insert on westos.* to lee@localhost;  ##针对westos数据库的所有表,授权用户selectinsert功能(*.*所有库所有表)
show grants for lee@localhost;                     ##查看用户lee的授权
revoke create on *.* FROM lee@localhost;           ##撤销用户创建数据库的授权

实例:

<1>建立本地用户

mysql -ulee -p                                  ##lee用户登陆数据库
CREATE USER lee@localhost identified by 'lee';  ##建立本地用户,密码lee,@ip远程用户
SELECT User FROM mysql.user;                    ##查看建立的用户
SELECT User,Host FROM mysql.user;               ##查看建立的用户及主机

示图:
这里写图片描述
这里写图片描述
<2>针对所有库所有表授权用户select功能

GRANT CREATE ON *.* TO lee@localhost;     ##授权用户create功能
SHOW GRANTS FOR lee@localhost;            ##查看用户lee的授权
CREATE DATABASE westos;                   ##用户可建立数据库

这里写图片描述
这里写图片描述
<3>授权用户create功能

GRANT CREATE ON *.* TO lee@localhost;        ##授权用户create功能
SHOW GRANTS FOR lee@localhost;               ##查看用户lee的授权
CREATE DATABASE westos;                      ##用户可建立数据库

这里写图片描述
这里写图片描述
<4>撤销用户create权利

REVOKE CREATE ON *.* FROM lee@localhost;      ##撤销用户创建数据库的授权
SHOW GRANTS FOR lee@localhost;                ##查看本地用户lee的权力

这里写图片描述

6.数据库备份

mysqldump -uroot -p123 westos > /mnt/westos.sql    ##数据库westos备份到/mnt/westos.sql
mysqldump -uroot -p123 westos --no-data            ##备份westos数据库(有框架无数据)
mysqldump -uroot -p123 --all-database              ##备份所有数据库
mysqldump -uroot -p123 --all-database --no-data    ##备份所有数据库(有框架无数据)

恢复方式1

mysql -uroot -p123 -e "CREATE DATABASE westos;"     ##非交互界面
mysql -uroot -p123 westos < /mnt/westos.sql         ##备份恢复

恢复方式2

vim /mnt/westos.sql                                 
CREATE DATABASE westos;
USE westos;
mysql -uroot -p123 < /mnt/westos.sql

(1)新建数据库westos及表linux
<1>显示新建数据库westos
这里写图片描述
<2>新建表linux,并添加字段
这里写图片描述
这里写图片描述
这里写图片描述
(2)备份

mysqldump -uroot -p123 westos > /mnt/westos.sql    ##数据库westos备份到/mnt/westos.sql

(3)删除westos数据库
这里写图片描述
(4)恢复
选择恢复方式2
示图:vim /mnt/westos.sql
这里写图片描述
示图:导入备份数据库
这里写图片描述
示图:数据库恢复
这里写图片描述

7.数据库密码更改

(1)更改普通用户密码

UPDATE mysql.user set Password='hello' WHERE User='lee';           ##修改密码(显示明文)
UPDATE mysql.user set Password=password('hello') WHERE User='lee'; ##修改密码(显示密文)

示图:更改用户密码(显示明文)
这里写图片描述
示图:更改用户密码(显示密文)
这里写图片描述
(2)更改超级用户密码

[root@apache ~]# systemctl stop mariadb             ##关闭mariadb服务
[root@apache ~]# mysqld_safe --skip-grant-tables &  ##开启mysql登陆接口并忽略授权表,&为打入后台,也可用‘Ctrl+Z‘
[root@apache ~]# mysql                              ##不需要密码直接登陆
update mysql.user set Password=password('123') where User='root';  ##更新,更改密码
exit
[root@apache ~]# ps aux | grep mysql                 ##过滤mysql的所有进程并用kill -9结束这些进程
[root@apache ~]# systemctl start mariadb           

<1>示图:开启mysql登陆接口并忽略授权表
这里写图片描述
<2>示图:直接登陆,更改密码
这里写图片描述
<3>示图:过滤mysql的所有进程并用kill -9结束这些进程
这里写图片描述
<4>超级用户使用新密码123成功登陆
这里写图片描述

8.安装phpMyAdmin数据库图形管理

<1>下载phpMyAdmin-3.4.0-all-language到/var/www/html并解压、重命名
这里写图片描述
这里写图片描述
<2>修改文件

[root@localhost mysqladmin]# cp config.sample.inc.php config.inc.php
[root@localhost mysqladmin]# vim config.inc.php 
17 $cfg['blowfish_secret'] = 'ba17clec07d65003'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

示图:修改文件
这里写图片描述
这里写图片描述
<3>安装php-mysql插件

[root@localhost mysqladmin]# yum install php-mysql.x86_64 

示图1:查找php-mysql插件
这里写图片描述
示图2:查看php支持的服务mysql
这里写图片描述
<4>重启服务

[root@localhost mysqladmin]# systemctl restart httpd

测试:
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

1、下载phpMyAdmin-3.4.0-all-language
2、yum install php-mysql.x86_64 -y
3、systemctl restart httpd
4、cp phpMyAdmin-3.4.0-all-languages.tar.bz2 /var/www/html
5、tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2
6、mv phpMyAdmin-3.4.0-all-languages mysqladmin
7、cd mysqladmin
8、cp config.sample.inc.php config.inc.php 
9、vim config.inc.php 
$cfg['blowfish_secret']='ba17clec07d65003'
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值