您的位置:首页 > 数据库 > MariaDB

Mariadb数据库的搭建及简单介绍

2019-08-12 20:28 976 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/cainiuxianfei/article/details/99329268

Mariadb简介

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。
MariaDB由MySQL的创始人Michael Widenius(英语:Michael
Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL
AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael
Widenius的女儿Maria的名字。
与 MySQL 相比较,MariaDB 更强的地方在于
Maria 存储引擎
PBXT 存储引擎
XtraDB 存储引擎
FederatedX 存储引擎
更快的复制查询处理
线程池
更少的警告和bug
运行速度更快
更多的 Extensions (More index parts, new startup options etc) 更好的功能测试
数据表消除
慢查询日志的扩展统计
支持对 Unicode 的排序

搭建Mariadb

重置实验环境
配置yum源
安装Mariadb数据库
yum install mariadb-server.x86_64 -y
下载好后开启,然后就可以直接用mysql命令来运行(默认为root用户登陆)
[root@mysql ~]# systemctl start mariadb
[root@mysql ~]# mysql

但这样不安全我们需要给他安全初始化
mysql_secure_installation 数据库安全初始化

设置后需要用户和密码登录
mysql -uroot -p 登陆

输入密码 (密码也可以直接跟在-p后面,但是基于安全考虑一般不会这样写)

查看数据库接口
netstat -antuple | grep mysql

发现有暴露在外面的接口,不安全
编辑配置文件
vim /etc/my.cnf
skip-networking=1 ###加入skip-networking=1 开启 跳过网络接口

再查看接口

数据库管理
mysqladmin -uroot -pwestos password lee
当超级用户密码忘记时:
systemctl stop mariadb
mysqld_safe --skip-grant-tables &
mysql
update mysql.user set Password=password(‘westos’) where User=‘root’;
kill -9 mysql的所有进程id
systemctl start mariadb
数据库的查询
mysql -uroot -pwestos 进入数据库
SHOW DATABASES; ##查询数据库最后结尾要加;

USE DATABASENAME; 进入数据库

SHOW TABLES; 查询表

SELECT * FROM TABLE; 查看表的所有内容

SELECT Host(字段) FROM user(表格) WHERE User=‘root’(行); 指定查询
建立
SHOW DATABASES; ##列出库
CREATE DATABASE westos; ##建立库

USE westos; ##进入库
CREATE TABLE linux ( ##建立表
-> username varchar(50) not null,
-> password varchar(50) not null
-> );
DESC linux; ##查看表结构

INSERT INTO linux VALUES (‘mq’,‘123’); ##插入数据到linux表中
SELECT * FROM linux; ##查询所有字段在linux表中
SELECT username,password FROM linux; ##查询指定字段在linux表中
注意;符号应是英文符,中文符不可以
varchar 可变长数据类型
若定为5,则1-5个字符都可以
char 定长数据类型
若定为5,若输入一个字符则后四个字符,会自动空格补齐
更改
UPDATE linux SET password=lee where username=‘lee’; ###更改表格信息
修改成功,但密码以明文显示,这样不安全
UPDATE linux SET password=password(‘lee’) where username=‘lee’; ###密文方式显示密码
ALTER TABLE linux ADD class varchar(20); 在表格里添加列
ALTER TABLE linux DROP CLASS; 在表格里删除列
ALTER TABLE linux ADD age varchar(20) AFTER password; 添加列到指定位置
(不能添加到第一列,会造成数据丢失)
ALTER TABLE linux RENAME redhat; 给表改名

删除
DELETE FROM redhat WHERE username=‘lee’;
DROP TABLE redhat; 删除表
DROP DATABASE westos; 删除数据库

数据库的备份
mysqldump -uroot -pwestos --all-database > /mnt/wesots.sql
数据备份好后,如果数据丢失或者被删库,恢复方式如下:
恢复方式1:
mysql -uroot -pwestos -e “CREATE DATABASE westos;” 新建westos库
mysql -uroot -pwestos westos < /mnt/westos.sql 将备份数据重定向到westos库中


恢复方式2:
vim /mnt/westos.sql 编辑备份文件
CREATE DATABASE westos; 在文件中写入建立westos库
USE westos; 并进入westos库,保存退出
mysql -uroot -pwestos < /mnt/westos.sql 将备份数据重定向到mysql库中

用户授权
CREATE USER lee@‘localhost’ IDENTIFIED BY ‘westos’; ####新建lee用户并且设定该用户智能以本地方式登录,密码为westos
GRANT SELECT,INSERT on westos.* TO lee@localhost; #####给lee用户赋予查询,写入的权限
SHOW GRANTS FORM lee@localhost; ######查看lee用户的权限
REVOKE INSERT ON westos.* FROM lee@localhost; ######去除lee用户的写入权限
DROP USER lee@localhost ####删除lee用户
FLUSH PRIVILEGES; ##刷新

安装phpmyadmin 数据库图形管理

下载phpMyAdmin-3.4.0-all-languages
yum install php php-mysql -y
systemctl restart httpd
tar jxf phpMyAdmin-3.4.0-all-languages ------- > /var/www/html
mv phpMyAdmin-3.4.0-all-languages mysqladmin
cd mysqladmin
cp config.sample.inc.php config.inc.php
vim config.inc.php
$cfg[‘blowfish_secret’] = ‘ba17c1ec07d65003’;
测试:
http://172.25.254.100/mysqladmin

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: