一、初始化mariaDB服务程序:

yum install mariadb mariadb-server           //安装mariaDB

systemctl start mariadb                      //启动mariadb

systemctl enable mariadb                     //添加到开机启动项中

初始化数据库服务程序:

[root@mysql-server ~]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB

SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current

password for the root user.  If you've just installed MariaDB, and

you haven't set the root password yet, the password will be blank,

so you should just press enter here.

Enter current password for root (enter for none):当前数据库密码为空,直接回车

OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB

root user without the proper authorisation.

Set root password? [Y/n] y           设置root用户的数据库密码

New password:

Re-enter new password:

Password updated successfully!

Reloading privilege tables..

... Success!

By default, a MariaDB installation has an anonymous user, allowing anyone

to log into MariaDB without having to have a user account created for

them.  This is intended only for testing, and to make the installation

go a bit smoother.  You should remove them before moving into a

production environment.

Remove anonymous users? [Y/n] y            删除匿名账号

... Success!

Normally, root should only be allowed to connect from 'localhost'.  This

ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y         禁止root用户从远程登陆

... Success!

By default, MariaDB comes with a database named 'test' that anyone can

access.  This is also intended only for testing, and should be removed

before moving into a production environment.

Remove test database and access to it? [Y/n] y      删除test库,并取消对其的访问权限

- Dropping test database...

... Success!

- Removing privileges on test database...

... Success!

Reloading the privilege tables will ensure that all changes made so far

will take effect immediately.

Reload privilege tables now? [Y/n] y           刷新授权表,让初始化后的设定立即生效

... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB

installation should now be secure.

Thanks for using MariaDB!

设置防火墙对数据库服务的允许策略:

[root@mysql-server ~]# firewall-cmd --permanent --add-service=mysql

success

[root@mysql-server ~]# firewall-cmd --reload

success

使用root用户登陆到数据库中:

[root@mysql-server ~]# mysql -u root -p

Enter password:

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MariaDB connection id is 15

Server version: 5.5.52-MariaDB MariaDB Server

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

MariaDB [(none)]> set password = password('123456');                 //修改当前用户的数据库密码

二、管理数据库与表单数据:

1、创建一个新的数据库用户::CREATE USER 用户名@主机名 IDENTIFIED BY '密码';

MariaDB [(none)]> create user cw@localhost IDENTIFIED BY '123456';

MariaDB [mysql]> show databases;                               //查看数据库

MariaDB [(none)]> use mysql;              //进入到mysql数据库

MariaDB [mysql]> select host,user,password from user where user='cw';

//查看新创建的用户名、主机、姓名与密码信息

2、修改新建用户权限:(默认权限只能访问)

数据库GRANT命令的授权操作常用方案:

命令

作用

GRANT 权限 ON 数据库.表单名称 TO 用户名@主机名

对某个特定数据库中的特定表单给予授权。

GRANT 权限 ON 数据库.* TO 用户名@主机名

对某个特定数据库中的所有表单给予授权。

GRANT 权限 ON *.* TO 用户名@主机名

对所有数据库及所有表单给予授权。

GRANT 权限 1,权限 2 ON 数据库.* TO 用户名@主机名

对某个数据库中的所有表单给予多个授权。

GRANT ALL PRIVILEGES ON *.* TO 用户名@主机名

对所有数据库及所有表单给予全部授权

举例:

MariaDB [(none)]> GRANT SELECT,UPDATE,DELETE,INSERT on mysql.user to cw@localhost;

//给予cw用户对mysql数据库的user表单查询、更新、删除、插入权限;

MariaDB [(none)]> show grants for cw@localhost;

//查看cw用户当前的授权

MariaDB [(none)]> revoke SELECT,UPDATE,DELETE,INSERT on mysql.user from cw@localhost;

//移除cw用户对musql数据库的user表单查询、更新、删除、插入权限

3、创建数据库与表单

常用的数据库表单管理命令:

用法

作用

CREATE database 数据库名称;

创建新的数据库

DESCRIBE 表单名称;

描述表单

UPDATE 表单名称 SET attribute=新值  WHERE  attribute>原始值;

更新表单中的数据

USE 数据库名称;

指定使用的数据库

SHOW databases;

显示当前已有的数据库

SHOW tables;

显示当前数据库中的表单

SELECT * FROM 表单名称;

从表单中选中某个记录值。

DELETE FROM 表单名 WHERE attribute=值;

从表单中删除某个记录值

MariaDB [mysql]> create database linuxprobe;

MariaDB [mysql]> use linuxprobe;

MariaDB [linuxprobe]> create table mybook(name char(15),price int,pages int);

MariaDB [linuxprobe]> describe mybook;          //查看mybook表头信息

+-------+----------+------+-----+---------+-------+

| Field | Type     | Null | Key | Default | Extra |

+-------+----------+------+-----+---------+-------+

| name  | char(15) | YES  |     | NULL    |       |

| price | int(11)  | YES  |     | NULL    |       |

| pages | int(11)  | YES  |     | NULL    |       |

+-------+----------+------+-----+---------+-------+

3 rows in set (0.00 sec)

4、管理表单数据:
向表单中插入新的书籍数据:

MariaDB [linuxprobe]> INSERT INTO
mybook(name,price,pages) VALUES('linuxprobe','60',518);

MariaDB [linuxprobe]> select *
from mybook;               //查看表中数据

+------------+-------+-------+

| name       | price | pages |

+------------+-------+-------+

| linuxprobe |    60 |  
518 |

+------------+-------+-------+

1 row in set (0.01 sec)

MariaDB [linuxprobe]> update mybook
set price=55;           //将价格修改为55元;

MariaDB [linuxprobe]> delete from
mybook;                  //删除书籍表单中的内容;

5、where命令用于数据库匹配查询:

参数

作用

=

相等

<>或!=

不相等

>

大于

<

小于

>=

大于或等于

<=

小于或等于

BETWEEN

在某个范围内

LIKE

搜索一个例子

IN

在列中搜索多个值

MariaDB [linuxprobe]> select *
from mybook;

+-------------+-------+-------+

| name        | price | pages |

+-------------+-------+-------+

| linuxprobe1 |    55 |  
518 |

| linuxprobe2 |    60 |  
518 |

| linuxprobe3 |    70 |  
518 |

| linuxprobe4 |    75 |  
518 |

| linuxprobe5 |    80 |  
518 |

+-------------+-------+-------+

5 rows in set (0.00 sec)

查看价格大于75的书籍:

MariaDB [linuxprobe]> select *
from mybook where price>75;

搜索价格不等于80的书籍:

MariaDB [linuxprobe]> select *
from mybook where price<>80;

MariaDB [linuxprobe]> select *
from mybook where price!=80;

6、数据库备份与恢复:

mysqldump命令用于备份数据库数量,格式为“mysqldump [参数] [数据库名称]”。

参数

作用

-u

数据库的用户名称

-p

密码提示符

--no-data

至备份数据库的描述结构,而不要数据

--local-all-tables

备份完成后将不再允许修改数据

将书籍数据库文件导出到家目录:

[root@mysql-server ~]# mysqldump
-uroot -p123456 linuxprobe > /root/linuxprobeDB_bak.sql

删除书籍数据库:

MariaDB [(none)]> drop database
linuxprobe;

创建一个空的数据库:

MariaDB [(none)]> create database
linuxprobe_bak;

导入刚刚备份的数据库至linuxprobe_bak库中:

[root@mysql-server ~]# mysql -uroot
-p123456 linuxprobe_bak < /root/linuxprobeDB_bak.sql

MariaDB数据库服务的更多相关文章

  1. fedora中使用 mariadb数据库建库和建表-- mariadb数据库服务无法启动?

    /proc(进程, 过程等含义) 文件系统是一个虚拟文件系统,通过它可以使用一种新的方法在 Linux® 内核空间(内核)和用户空间(用户)之间进行通信.在 /proc 文件系统中,我们可以将对虚拟文 ...

  2. 解决mariadb数据库服务无法开启

    我的系统Manjaro linux,安装的数据库为mariadb 10.1 1.安装数据库 pacman -S mariadb 2.配置数据库启动环境: mysql_install_db --user ...

  3. 【Ubuntu16】apt-get安装MariaDB

    一.Mysql背景信息 Mysql在互联网早期就流行了,追求速度.简单.坚持开源.几乎支持所有操作系统.完全支持多用户.多线程,支持海量数据存储,采用MyISAM.InnoDB两大存储引擎优势互补.但 ...

  4. mysql和mariadb备份工具xtrabackup和mariabackup(mariadb上版本必须用这个)

    简介 xtraBackup(PXB) 工具是 Percona 公司用 perl 语言开发的一个用于 MySQL 数据库物理热备的备份工具,支持 MySQl(Oracle).Percona Server ...

  5. Linux-基础学习(五)-mariadb主从复制以及redis学习

    开始今日份整理 1.mariadb的主从复制 主从复制大致图示: 1.1 mysql基本命令复习 linux下的操作 .启动mysql systemctl start mariadb .linux客户 ...

  6. mysql/mariadb主从复制

    主从复制简介 MySQL数据库的主从复制方案,是其自带的功能,并且主从复制并不是复制磁盘上的数据库文件,而是通过binlog日志复制到需要同步的从服务器上. MySQL数据库支持单向.双向.链式级联, ...

  7. Mariadb主从复制

    前戏: mysql的基本命令复习 .启动mysql systemctl start mariadb .linux客户端连接自己 mysql -uroot -p -h 127.0.0.1 .远程链接my ...

  8. CentOS 7 源码编译MariaDB

    下载源码包 安装 SCL  devtoolset-7 SCL(Software Collections)可以让你在同一个操作系统上安装和使用多个版本的软件,而不会影响整个系统的安装包.SCL为社区的以 ...

  9. 【Ubuntu 16.04.3 LTS】apt-get 安装MariaDB

    一.Mysql背景信息 Mysql在互联网早期就流行了,追求速度.简单.坚持开源.几乎支持所有操作系统.完全支持多用户.多线程,支持海量数据存储,采用MyISAM.InnoDB两大存储引擎优势互补.但 ...

随机推荐

  1. mybatis 中map作为参数

    public interface ICodeGenDao extends IBaseDao<AssetsAllocation, Long> { /*** * 生成主编码 * @param ...

  2. HDU 5687 Problem C 【字典树删除】

    传..传送:http://acm.hdu.edu.cn/showproblem.php?pid=5687 Problem C Time Limit: 2000/1000 MS (Java/Others ...

  3. 对selenium自动化框架重构

    近期在编写自动化脚本的时候发现以前写的部分不是特别友好,在此进行重构.废话不说 搭建自动化框架,首先先理清思路: 使用的技术python+unittest+selenium+excel 文件目录有: ...

  4. 2018.11.28 OGNL表达式与struts2框架结合的体现---在配置文件中体现(补充)

    Demo3Action配置 struts.xml 主配置文件配置 地址栏输入 http://localhost:8080/StrutsDay03/Demo3Action 对于主配置的文件参数而言,如果 ...

  5. 2018.10.3 MianShiBaoDian JavaWeb后端部分

    MSBD 四.JavaWeb后端部分 1.Tomcat的优化经验 去掉对web.xml的监控,吧jsp提前编写成servlet,由于物理内存的情况,加大Tomcat使用的jvm的内存 2.HTTP请求 ...

  6. likelihood(似然) and likelihood function(似然函数)

    知乎上关于似然的一个问题:https://www.zhihu.com/question/54082000 概率(密度)表达给定下样本随机向量的可能性,而似然表达了给定样本下参数(相对于另外的参数)为真 ...

  7. "应用程序无法正常启动(0xc000007b)。请单击 确定 关闭应用程序。"解决方法

    完成一小项目,正常运行,测试环境有Windows XP,Win 7,Win X64及有SP的版本,也是我客户端可能用到的系统版本,Win8和Win10未测试 但在分发过程中,发现有的机器可以正常运行, ...

  8. Android学习笔记_58_清除手机应用程序缓存

    通过查看手机设置(setting)源代码,发现它里面获取应用大小和缓存大小是通过PackageManager里面的getPackageSizeInfo方法.然而此方法时私有的,因此通过反射调用此方法. ...

  9. 第13章 GPIO输入—按键检测

    本章参考资料:<STM32F76xxx参考手册>.库帮助文档<STM32F779xx_User_Manual.chm>. 按键检测使用到GPIO外设的基本输入功能,本章中不再赘 ...

  10. python 解决粘包问题

    客户端发送hello,如果服务端 recv(1) ,那只能接收到 h 这一个字符,然后再recv(1) 一下,可以再接收一个 e , 因为客户端发送的结果长,所以只能把其他的先缓存下来,下次recv的 ...