Linux的数据库基本管理

数据库的安装

mariadb数据库,mysql的一个分支

yum install mariadb-server -y
systemctl start mariadb
systemctl enable mariadb
mysql                  ##查看数据库,此时不需要密码可以直接登陆数据库

netstat -antlupe | grep mysql    ##查看数据库对外访问端口

vim /etc/my.cnf                  
skip-networking=1    ##关闭数据库对外访问接口
systemctl restart mariadb

数据库初始化

使用命令mysql_secure_installation对数据库进行初始化设置,第一个问题回车,第二个设定密码,其他全点击y。然后登陆数据库需要数输入密码

mysql -uroot -p             ##查看数据库

SHOW DATABASES;        ##查看数据库 
USE 库名称;             ##进入数据库
SHOW TABLES;           ##查看表
DESC 表名称;            ##查看表结构
FLUSH PRIVILEGES;      ##刷新数据库信息 
SELECT * FROM 表名称;   ##查看表所有字段
QUIT                   ##退出
SELECT 字段1,字段2,... FROM 表名称 WHERE 字段=‘字段值’;
例:SELECT Host,User,Select_priv FROM user WHERE Host='localhost';  ##查看user中Host为localhost的Host,User,Select_priv三个字段

数据库管理

1)建立

SHOW DATABASES                ##列出库
CREATE DATABASE hello;        ##建立库
USE hello;                   ##进入库

CREATE TABLE linux(           ##建立表
username varchar(20) not null,
password varchar(16) not null
);                            ##此命令是一行命令,换行写方便排错
DESC linux;                   ##查看表结构

INSERT INTO linux values ('lol','123');       ##插入数据到linux表中
SELECT * FROM linux;                         ##查询所有字段在linux表中
SELECT username,password FROM linux;         ##查询指定字段在linux表中

2)更改
UPDATE linux SET password=234 WHERE username=’lol’; ##修改linux表中username为lol的password为234

ALTER TABLE linux ADD class varchar(20); ##在linux表中添加class字段,默认加在最后面

ALTER TABLE linux ADD age varchar(20) AFTER password; ##指定加在password后面

ALTER TABLE linux DROP class; ##删除字段

ALTER TABLE linux RENAME redhat; ##更改表名称

3)删除
DELETE FROM redhat WHERE username=’th’; ##删除表中指定字段的内容

DROP TABLE redhat; ##删除表

DROP DATABASE westos; ##删除数据库

4)用户授权
创建用户时使用@%时被授权用户在任意客户端都可以登陆数据库 ,@localhost只有在数据库所在主机登陆数据库

CREATE USER lol@localhost identified by '123';    ##创建用户并设定密码
GRANT SELECT,INSERT ON westos.* TO lol@localhost; ##给lol用户访问与插入权限

SHOW GRANTS FOR lol@localhost; ##查看lol用户权限

REVOKE INSERT ON westos.* FROM lol@localhost;      ##取消lol用户权限
DROP USER lol@localhost;   ##删除lol用户  
FLUSH PRIVILEGES;          ##刷新 

测试:
用被授权用户登陆和数据库

可以查看到westos数据库,并且可以进入记忆插入数据

5)数据库的备份

mysqldump -uroot -p123 redhat > /mnt/redhat.sql
mysqkdump -uroot -p123 redhat --no-data     ##只备份表格不备份数据 
mysqkdump -uroot -p123 --all-database       ##备份所有数据库   
mysqkdump -uroot -p123 --all-database  --no-data  ##只备份所有数据库框架不备份数据

当数据库被删除时

恢复方式1:
使用命令建立数据库直接恢复

mysql -uroot -p123 -e "CREATE DATABASE redhat;"
 mysql -uroot -p123 redhat < /mnt/redhat.sql

恢复方式2:
先在配置文件中写好建立westos再恢复

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

mysql -uroot -p123 < /mnt/redhat.sql

6)当超级用户密码忘记时:

systemctl stop mariadb.service     ##关闭mariadb服务
mysqld_safe --skip-grant-tables &  ##开启数据库安全模式
mysql                              ##此时可以不用密码直接登陆数据库

update mysql.user set Password=password('westos') where User ='root';      
##重置密码,password=password('westos')加密密码,password=westos修改的密码为明文

ps aux | grep mysql          ##查看mysql所有进程
kill -9 mysql的所有进程id     ##结束mysql所有进程
systemctl restart mariadb    ##重启数据库

当用户记得超级用户密码时:

mysqladmin -uroot -p原密码 password 新密码

网页版数据库

1)安装httpd服务,php相关软件

yum install httpd -y              ##安装httpd服务
yum install php -y                 
yum install php-mysql.x86_64 -y

2)在网上下载phpMyAdmin数据库图形管理插件,解压下载的软件,并将其重命名为mysqladmin移到httpd的默认发布目录/var/www/html/目录里(注意所有插件需要根据本机安装的mariadb版本对应)

tar zxf phpMyAdmin-4.0.10.20-all-languages.tar.gz
mv phpMyAdmin-4.0.10.20-all-languages /var/www/html/mysqladmin

3)进入mysqladmin目录里并执行cp config.sample.inc.php config.inc.php命令。然后关闭火墙重启httpd服务

cd /var/www/html/mysqladmin/
cp config.sample.inc.php config.inc.php
systemctl restart httpd
systemctl stop firewalld.service

4)此时进入浏览器查看会出现报错,缺少php-mbstring插件(需要和php版本一致)

5)去网上下载php-mbstring插件并安装,再次重启httpd服务

rpm -ivh php-mbstring-5.4.16-21.el7.x86_64.rpm
systemctl restart httpd

6)再次进入浏览器输入ip/mysqladmin查看

 

7)将语言改为简体中文登陆即可简单方便的使用网页管理数据库

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值