一、初始化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. 成功解决:FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is

    问题原因: 包内出错,是h5py包 解决思路: 执行如下操作: pip -- install h5py==2.8.0rc1 注意:如果执行pip install h5py==2.8.0rc1 成功话, ...

  2. 爬虫入门之爬取策略 XPath与bs4实现(五)

    爬虫入门之爬取策略 XPath与bs4实现(五) 在爬虫系统中,待抓取URL队列是很重要的一部分.待抓取URL队列中的URL以什么样的顺序排列也是一个很重要的问题,因为这涉及到先抓取那个页面,后抓取哪 ...

  3. ORA-01795: 列表中的最大表达式数为1000的解决方法

    IN中的数据量不能超过1000条. 解决方案:把条件分成多个少于1000的IN即: DELETEFROMT_MM_SECTION_SITE_UPDATEWHERE T.T_MM_SECTION_SL_ ...

  4. HTML:一个form表单有两个按钮,分别提交到不同的页面

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. GitLab 数据备份和恢复

    GitLab 备份 /opt/gitlab/bin/gitlab-rake gitlab:backup:create //只是备份各项目的数据 完成后会在默认路径下多出来备份的tar包! /var/o ...

  6. June 17th 2017 Week 24th Saturday

    Absence sharpens love, presence strengthens it. 相聚爱益切,离别情更深. There is almost no such love that can i ...

  7. March 31 2017 Week 13 Friday

    Sometimes, you think the sky is falling down, actually, that is just because you stand slanting. 有时候 ...

  8. cocos2d-x3.1 下实现相似Android下ExpandListView的效果

    在左Android開始有SDK提供ExpandListView的可扩展列表,而在iOS下有很多第三方做好的Demo,这里我是參照iOS下RATreeView这个第三方库实现的. 本文代码:须要在3.1 ...

  9. BZOJ1718:[USACO]Redundant Paths 分离的路径(双连通分量)

    Description In order to get from one of the F (1 <= F <= 5,000) grazing fields (which are numb ...

  10. 2018.11.26 struts2流程源码

    struts2的架构图 从最上面的类开始,也就是i 我们的核心过滤器strutsPrepareAndExecuteFilter 判断当前请求是否由struts2来处理,如果是就往else走,不由它来处 ...