Mysql数据库管理

#Mysql数据库管理
#一.mariadb是mysql的分支产品,完全兼容于mysql

yum  install  mariadb-server  ##安装mariadb 
systemctl start mariadb     ##开启服务
systemctl enable mariadb   ##开机启动服务

[外链图片转存失败(img-6jiscHn0-1564766438155)(https://img-blog.youkuaiyun.com/20180201230513181?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

[外链图片转存失败(img-NJV3Zuzh-1564766438157)(https://img-blog.youkuaiyun.com/20180201230547967?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
#二.安全初始化
安装后是不需要密码就可以进入数据库的,需要安全初始化

netstat -antlpue | grep mysql   ##查看服务端口状态
vim /etc/my.cnf                 ##配置文件
  -->> 6行:skip-networking=1   
systemctl restart mariadb       ##重新开启mariadb服务
mysql_secure_installation       ##第一次安装mysql以后通过这条命令可以对mysql进行设置

实验:
vim /etc/my.cnf 编辑配置文件写入第6行内容,跳过网络
这里写图片描述

netstat  -antlpue | grep mysql ##查看服务端口
systemctl restart mariadb      ##重新开启mariadb服务
mysql_secure_installation       ##通过这条命令可以对mysql进行设置,修改root进入mysql密码,这里设置123;接下来询问是否移除匿名用户使用数据库;询问是否允许root用户远程登陆数据库;默认测试数据库test任何人都可以进入,是否移除;最后一个加载使设置生效。

这里写图片描述
[外链图片转存失败(img-fWCzcVrS-1564766438160)(https://img-blog.youkuaiyun.com/20180201230914939?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
[外链图片转存失败(img-TiDp3kwD-1564766438160)(https://img-blog.youkuaiyun.com/20180201230937821?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
#三.登陆
操作完上边的步骤就可以安全登陆数据库了。

mysql  -uroot -p     (或者mysql  -uroot -p123) 登陆

这里写图片描述
##1.mysql数据库基本指令(指令大小写都可以,指令后要加英文状态下的分号才能执行)

SHOW DATABASES;     ##显示数据库
USE  mysql;         ##进入数据库
SHOW TABLES;       ##显示数据库中的表
     -->>DESC user;    ##查询user表中的数据结构
      SELECT Host,User,Password FROM user; ##在表user中搜索Host,User,Password信息        
      SELECT Host,User,Password FROM user WHERE="::1"; 在表user中搜索Host,User,Password信息,并且Host为"::1"的数据

[外链图片转存失败(img-Zwhui8Vo-1564766438162)(https://img-blog.youkuaiyun.com/20180201231158484?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

实验:

show databases;  ##显示mysql中所有数据库
use mysql;       ##进入到mysql数据库中
show tables;     ##显示数据库mysql中的表

这里写图片描述

desc  user;  ##查询mysql数据库中表中的user的数据结构

[外链图片转存失败(img-IwCvEmRi-1564766438163)(https://img-blog.youkuaiyun.com/20180201231642480?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

select Host,User,Password from user;    ##在user这个表中查找Host,User,Password的信息
select Host,User,Password from user where Host='::1';    ##在user这个表中查找Host,User,Password的信息并且Host为“::1”的信息

[外链图片转存失败(img-lppqDZZ9-1564766438164)(https://img-blog.youkuaiyun.com/20180201231731504?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
##2.数据库的建立.
这里写图片描述

CREATE DATABASE westos;     ##新建数据库westos
use westos;     ##使用westos数据库(进入westos数据库)
CREATE table linux(     ##新建linux表并写入内容
    ->username varchar(15) not null,
    ->password varchar(15) not null
    ->);
SHOW TABLES;          ##显示westos中的表
DESC linux;           ##查看linux表
INSERT INTO linux values ('username1','passwd1');  ##添加最底层数据
DESC linux;          ##查看linux数据结构
SELECT * FROM linux;     ##查找linux中的*信息

实验:

create database westos;   ##新建westos数据库

这里写图片描述

use  westos;   ## 进入westos数据库,新建linux表并写入内容。显示westos中的所有表并查看表linux的数据结构

[外链图片转存失败(img-6qAH7NiM-1564766438166)(https://img-blog.youkuaiyun.com/20180201232132394?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

分别写入’password‘,‘username’,‘class’到linux表中,select * from linux 查看表中所有数据
insert into linux  values('123','lee','1');
insert into linux  values('234','tom','2');
insert into linux  values('345','pop','3');
select * from linux;

这里写图片描述
##3.信息的更改

SHOW TABLES;  
ALTER TABLE linux RENAME redhat;   ##更改linux表名位redhat
ALTER TABLE redhat RENAME linux;   ##更改redhat表名位linux
SELECT * FROM linux;
ALTER TABLE linux ADD sex varchar(4);	##添加sex字段到linux表中
ALTER TABLE linux DROP sex			##删除sex字段
ALTER TABLE linux ADD sex  VARCHAR(5)  AFTER username    ##在username字段后添加字段sex
UPDATE linux SET password=password('passwd2') WHERE username=’user1’;	##更新linux表中user1 的密码为password2,不明文,password=‘passwd2’则明文
insert into linux values ('user1','passwd1');	##在linux表中插入值为username = user1,password = password1
 DELETE from linux WHERE username='lee';	##删除linux表中lee的所以内容 
 DELETE FROM redhat WHERE username='lee' ADD password='123';    ##如果重名字再添加约束条件删除用户lee
DROP TABLE redhat;   ##删除表redhat
DROP DATABASE westos; ##删除数据库westos

[外链图片转存失败(img-e5jFXQE7-1564766438168)(https://img-blog.youkuaiyun.com/20180201232912230?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
实验:

show tables;
alter table linux rename redhat; ##更改linux表名位redhat

show tables; 
alter table redhat rename linux;  ##更改redhat表名位linux
show tables;

[外链图片转存失败(img-GLf6zM9Q-1564766438169)(https://img-blog.youkuaiyun.com/20180201233016986?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

alter table  linux add sex varchar(4);  ##将sex这个字端添加到linux表中

这里写图片描述

alter table linux drop sex;  ##从linux表中删除sex这个字段并,将sex添加到password后边;

这里写图片描述

insert into linux values ('789','m','ha','4');  ##添加linux表中最底层数据,要和字段相匹配,否则报错

这里写图片描述

 delete from linux where username='lee' and password='146';  ##名字冲突再添加约束条件

[外链图片转存失败(img-rMFE9Hoe-1564766438173)(https://img-blog.youkuaiyun.com/20180201233308917?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
新建redhat表,将其删除,

CREATE TABLE redhat(
    -> username varchar(4) not null,
    -> password varchar(5) not null
    -> );
drop table redhat;

[外链图片转存失败(img-izRIEqYH-1564766438173)(https://img-blog.youkuaiyun.com/20180201233353951?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
新建data数据库,将其删除;

create database data;
drop database data;

这里写图片描述

update linux set password=password('321') where username='tom';  ##修改tom的密码为321,非明文

这里写图片描述
##4.数据库访问的授权
这里写图片描述

grant select on  *.* to user1@localhost identified by 'passwd1';	
     ##授权user1 密码为passwd1  并且只能在本地查询(select)数据库的所以内容 
grant all on mysql.* to user2@'%' identified by 'passwd2';		
     ## 授权user2 密码为passwd2  可以从远程任意(%)主机登录mysql 并且可以对mysql数据库任意(all)操作
CREATE USER lee@‘localhost’ identified by 'westos';   
     ## 授权lee用户本地登陆数据库密码为westos并且可以对mysql数据库任意(all)操作;

GRABT SELECT,INSERT on westos.* TO lee@localhost;    
     ##授权lee用户本地登陆数据库,密码westos;对数据库可执行嗯select查看,和insert增加底层数据的权限权限
SHOW GRANTS FOR lee@localhost;      
     ##显示lee对数据被授权的权限
REVOKE INSERT ON westos.* FROM lee@localhost;   
      ##取消lee对westos数据库的insert权限

实验:grant select on *.* to lee@localhost identified by '123'; ##授权user1 密码为passwd1 并且只能在本地查询(select)数据库的所以内容

[外链图片转存失败(img-ZpaOvDTT-1564766438176)(https://img-blog.youkuaiyun.com/20180201233707256?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

show grants for lee@localhost;  ##查看lee被授权的信息

[外链图片转存失败(img-fJBqEbq6-1564766438176)(https://img-blog.youkuaiyun.com/20180201233737867?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

REVOKE INSERT ON  *.*  FROM lee@localhost;  ##取消lee对所有数据库登陆的权限

##5.超级用户忘记密码

[外链图片转存失败(img-A6D2RTYj-1564766438177)(https://img-blog.youkuaiyun.com/20180201233825980?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
实验:
[外链图片转存失败(img-7mwgbHfw-1564766438177)(https://img-blog.youkuaiyun.com/20180201233852436?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
6.数据库的备份
mysqldump -uroot -p[密码] 【数据库】> /mnt/westos.sql 备份数据库到/mnt下,文件名字随意良好的习惯还是用sql结尾

mysqldump -uroot -p123  westos --no-data     ##备份数据库框架,不要里边的数据
mysqldump  -uroot -p123  --all-database    ##备份所有的数据
mysqldump  -uroot -p123  --all-database  --no-data    ##备份数据库的框架去掉数据
              
mysql -uroot -p123 -e "DROP DATABASE westos;"    ##不用交互式删除数据库westos
          

恢复方式1:

     mysql  -uroot  -p123 -e "CREATE DATABASE westos;"  ##创建westos数据库
     mysql  -uroot  -p123   westos < /mnt/westos.sql  ##数据恢复

恢复方式2:

     vim /mnt/westos.sql
           21行:CREATE DATABASE westos; 
           22行:USE westos;
      mysql -uroot -p123 < /mnt/westos.sql

[外链图片转存失败(img-i4sGe5Wc-1564766438178)(https://img-blog.youkuaiyun.com/20180201234053483?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
实验:方法一
备份成功
这里写图片描述
删除westos数据库
这里写图片描述

 mysql -uroot -pwestos -e "create database westos";    ##非交互创建数据库westos
mysql -uroot -pwestos  westos < /tmp/westos.mysql   ##导入wetsos数据

[外链图片转存失败(img-cSHzhiMJ-1564766438180)(https://img-blog.youkuaiyun.com/20180201234301660?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
方法2:实验前删除恢复的数据库westos

mysql -uroot -pwestos -e "drop database westos";    ##非交互删除westos数据库
mysql -uroot -pwestos -e "show databases;"   ##显示数据库确保删除
vim /tmp/westos.mysql 编辑备份文件
  -->>CREATE DATABASE westos;
      USE westos;

[外链图片转存失败(img-58CcXiUv-1564766438180)(https://img-blog.youkuaiyun.com/20180201234351655?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]

mysql -uroot -pwestos < /tmp/westos.mysql ##导入数据库并查看

[外链图片转存失败(img-F6U4Nz7f-1564766438181)(https://img-blog.youkuaiyun.com/20180201234509254?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
7.安装phpmyadmin数据库图形管理
下载phpMyAdmin-3.4.0-all-languages.tar.bz2

    yum install php php-mysql -y  ##自动安装
    systemctl  restart httpd    ##重启http服务
    tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2   ##解压到----> /var/www/html
    mv phpMyAdmin-3.4.0-all-languages    mysqladmin
    cd   mysqladmin
cp config.sample.inc.php config.inc.php 

  测试:http://ip/mysqladmin

这里写图片描述
这里写图片描述
#8 .论坛搭建
下载论坛模板Discuz_X3.2_SC_UTF8.zip解压到/mnt
把解压出来的upload目录 复制到/var/www/html下
给/upload/* 777权限, selinux=disabled
开启httpd服务
浏览器查看
[外链图片转存失败(img-wkrs8WAB-1564766438184)(https://img-blog.youkuaiyun.com/20180202185411101?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
[外链图片转存失败(img-Vn5hZ5Xv-1564766438184)(https://img-blog.youkuaiyun.com/20180202185419014?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGl4bHhs/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
浏览器查看
这种基于linux+apache+mysql/mariadb/+perl/php/python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但因为常被放在一起,拥有了越来越高的兼容度,共同组成了一个强大的web应用平台,成为lamp架构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值