前言

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius主导开发,MariaDB名称来自Michael Widenius的女儿Maria的名字

Linux安装MariaDB

安装

使用yum安装MariaDB

yum install mariadb*


安装完成MariaDB,首先启动MariaDB

systemctl start mariadb

设置开机启动

systemctl enable mariadb

接下来进行MariaDB的相关简单配置

mysql_secure_installation

首先是设置密码,会提示先输入密码

Enter current password for root (enter for none):        #–初次运行直接回车

设置密码

Set root password? [Y/n]           # – 是否设置root用户密码,输入y并回车或直接回车New password:                      # – 输入root用户的密码Re-enter new password:             # – 再输入一次你设置的密码

其他配置

Remove anonymous users? [Y/n]                  # – 是否删除匿名用户,回车Disallow root login remotely? [Y/n]            # –是否禁止root远程登录,回车Remove test database and access to it? [Y/n]   # – 是否删除test数据库,回车Reload privilege tables now? [Y/n]             # – 是否重新加载权限表,回车

初始化MariaDB完成,接下来测试登录

mysql -u root -p
Enter password:

ERROR 1698 (28000): Access denied for user ‘root’@‘localhost’

在上面的这步操作,如果遇到了如下问题:

$ mysql_secure_installation

Enter current password for root (enter for none):
ERROR 1698 (28000): Access denied for user ‘root’@‘localhost’

参考:mysql出现ERROR1698(28000):Access denied for user root@localhost错误解决方法

安装时并没有设置密码,但是需要让输入密码,直接回车也不行,可能密码为空,但是无法进入 MariaDB。

需要修改 /etc/my.cnf.d/server.cnf 配置文件(MariaDB新版和MySQL可能不一样):

sudo vim /etc/my.cnf.d/server.cnf

找到 [mysqld] 后面添加一个,可以让你不用登录密码进入 MariaDB:

skip-grant-tables

保存:wq,退出,重启 MariaDB:

systemctl restart mariadb

注:在使用VIM时,有时需要把VIM中的内容复制到其他程序中,在normal mode下,按住 shift 键,使用鼠标选择,右击鼠标键,菜单中就出现了copy选择。

这时候直接使用 mysql -u root -p 敲回车就能进入 MariaDB,不需要输入密码了,现在分别执行下面三句话:

use mysql;
# update user set authentication_string=password("newpassward") where user="root";
# 新版MariaDB和MySQL此语句报错:ERROR 1348 (HY000): Column 'authentication_string' is not updatable
# 用下面的:
SELECT User, Host FROM mysql.user;
flush privileges;
ALTER user 'root'@'localhost' IDENTIFIED BY 'newpassward';    # newpassward 新密码flush privileges;

密码和用户名就在上面的双引号之间输入就可以了,不能删掉。

在进入 /etc/my.cnf.d/server.cnf 中将 skip-grant-tables 注释掉即可,前面加 # 为注释。在返回终端输入 mysql -u root -p,应该可以进入数据库了。

如果还是报错,再将上面的 skip-grant-tables 注释去掉重新生效,按照上面的步骤重新免密码进入 MariaDB,输入:

use mysql;
select user, plugin from user;

执行后,错误是因为 plugin root 的字段是 auth_socket,那我们改掉它,替换为 mysql_native_password 就行了。输入:

update user set authentication_string=password("yourpasswd"),plugin='mysql_native_password' where user='root';

然后回车执行以下,再输入 select user,plugin from user; 回车,我们能看到 root 用户的字段改成功了。

然后再注释掉上面的 skip-grant-tables 再重启就好了。MySQL新版本可能不一样,而且不同系统可能也可能有区别。

现在 MariaDB 的 root 密码设置没什么问题了。

配置字符集

配置MariaDB的字符集,文件/etc/my.cnf

vi /etc/my.cnf

[mysqld]标签下添加

init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

文件/etc/my.cnf.d/client.cnf

vi /etc/my.cnf.d/client.cnf

[client]中添加

default-character-set=utf8

文件/etc/my.cnf.d/mysql-clients.cnf

vi /etc/my.cnf.d/mysql-clients.cnf

[mysql]中添加

default-character-set=utf8

全部配置完成,重启mariadb

systemctl restart mariadb

之后进入MariaDB查看字符集

mysql> show variables like "%character%";show variables like "%collation%";

显示为

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client    | utf8                      |
| character_set_connection | utf8                      |
| character_set_database  | utf8                      |
| character_set_filesystem | binary                    |
| character_set_results    | utf8                      |
| character_set_server    | utf8                      |
| character_set_system    | utf8                      |
| character_sets_dir      | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)+----------------------+-----------------+
| Variable_name        | Value          |
+----------------------+-----------------+
| collation_connection | utf8_unicode_ci |
| collation_database  | utf8_unicode_ci |
| collation_server    | utf8_unicode_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)

字符集配置完成。

添加用户,设置权限

创建用户命令(password 是要设置的密码)

mysql>create user username@'localhost' identified by 'password';

直接创建用户并授予本地登录权限

mysql>grant all privileges on *.* to CodePeak@'localhost' identified by '123456';

授予外网登录权限

mysql>grant all privileges on *.* to username@'%' identified by 'password';

授予权限并且可以授权

mysql>grant all privileges on *.* to username@'hostname' identified by 'password' with grant option;

查看用户

mysql>SELECT User, Host FROM mysql.user;

删除某个用户

mysql>DROP USER username@'localhost'

简单的用户和权限配置基本就这样了。

其中只授予部分权限把其中all privileges或者all改为select, insert, update, delete, create, drop, index, alter, grant, references, reload, shutdown, process, file其中一部分。

参考文章:

Linux系统教程:如何检查MariaDB服务端版本

MariaDB Proxy读写分离的实现

Linux下编译安装配置MariaDB数据库的方法

CentOS系统使用yum安装MariaDB数据库

安装MariaDB与MySQL并存

Ubuntu 上如何将 MySQL 5.5 数据库迁移到 MariaDB 10

[翻译]Ubuntu 14.04 (Trusty) Server 安装 MariaDB

CentOS7下MariaDB安装及配置相关推荐

  1. centos72安装mysql配置密码_MySQL数据库之170419、Centos7下完美安装并配置mysql5.6

    本文主要向大家介绍了MySQL数据库之170419.Centos7下完美安装并配置mysql5.6 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. linxu环境: centos ...

  2. mantis config_inc.php g_source,CentOS7下Mantis安装与配置

    Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操作的形式提供项目管理及缺陷跟踪服务.由于其安装简单.使用方面,备受广大开发和测试人员青睐.下面主要讲解下Mantis再CentOS ...

  3. CentOS7下Mantis安装与配置

    Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操作的形式提供项目管理及缺陷跟踪服务.由于其安装简单.使用方面,备受广大开发和测试人员青睐.下面主要讲解下Mantis再CentOS ...

  4. CentOS7 下MariaDB安装与简单配置(最新)

    前言 MySQL和MariaDB的区别: LAMP架构盛极一时,这离不开MySQL的免费与易用,但是在Oracle收购了Sun之后,很多公司开始担忧MySQL的开源前景,而最近Oracle进一步闭源的 ...

  5. Centos7 下cobbler安装及配置

    1.背景介绍 作为运维,在公司经常遇到一些机械性重复工作要做,例如:为新机器装系统,一台两台机器装系统,可以用光盘.U盘等介质安装,1小时也完成了,但是如果有成百台的服务器还要用光盘.U盘去安装,就显 ...

  6. pthreads v3在centos7下的安装与配置

    我的centos版本是7.4.1708,php的版本是7.2.4(注意要是线程安全版),如下图所示: 首先我们在如下网址下载好pthreads的源码: http://pecl.php.net/pack ...

  7. centos7php自启动,centos7系统下nginx安装并配置开机自启动操作

    这篇文章主要介绍了centos7系统下nginx安装并配置开机自启动操作方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 这篇文章主要介绍了centos7系统下nginx安装并配置开机自启动操作 ...

  8. linux7安装pgsql数据库,CentOS7下PostgreSQL安装

    环境:CentOS 7 版本:postgresql11 安装repo源 yum install https://download.postgresql.org/pub/repos/yum/reporp ...

  9. Hive入门教程<2> | hive在centos7下的安装部署

    hive在centos7下的安装部署 前提 安装hive hadoop集群配置 hive基本操作 演示向hive中导入本地数据文件 前提 1.首先有自己的远程终端登录工具,我这里用的是mobaxter ...

  10. CentOS-7 下 GitLab 安装部署教程

    CentOS-7 下 GitLab 安装部署教程 前言 主要内容 GitLab 介绍 本篇环境信息 准备工作 配置清华大学镜像仓库 安装基础依赖 安装 Postfix 开放 ssh 以及 http 服 ...

最新文章

  1. Brocade光纤交换机FOS升级
  2. WSL安装Oracle,WSL安装JDK8 - terwergreen的个人空间 - OSCHINA - 中文开源技术交流社区...
  3. 初等数论--整除--公因数一定是最大公因数的因数
  4. 信息学奥赛一本通 2005:【20CSPJ普及组】直播获奖 | 洛谷 P7072 [CSP-J2020] 直播获奖
  5. python中request方法_如何使用python语言中的request模块获取代码
  6. 【kafka】利用 InfoSphere Data Replication CDC for Kafka 实现高效数据复制
  7. 安装PHP5,安装PHP7
  8. 郑州没有互联网 | 畅言
  9. Labview OCR数字识别
  10. 苹果软件测试的电池损耗准确,苹果官方维修如何查看苹果iPhone电池损耗和寿命...
  11. css flex 布局 space-around 和 space-evenly 之间的区别css flex布局)
  12. curaengine linux编译,Cura Engine
  13. typec耳机知识介绍-数字耳机,模拟耳机
  14. 用Linux做wifi热点/无线路由
  15. 阿里聚安全发布 企业可享淘宝同款防护
  16. 基于React的Alita框架的jest用法
  17. cpu排行计算机专业,CPU天梯图2018年9月最新版 九月台式电脑CPU性能排行
  18. 将图和双向transformers融合的分子性质预测新工具 简称AGBT - 论文阅读
  19. VB基础版版务处理_20050605
  20. left join on详解

热门文章

  1. 达梦8数据库安装教程
  2. Spring核心组件分析
  3. kali初学——nmap扫描
  4. PANTONE国际色卡CMYK配方表
  5. 【转载】C++ Interesting卡常数
  6. net3.5离线一键安装工具_一键获取抖音直播源地址(无水印高清下载),无需安装Fiddler抓包工具...
  7. 软件需求工程 高校教学平台 项目章程
  8. 使用 URPF 来阻止IP地址欺骗( IP Address Spoofing)
  9. 【非官方】哈工大2022 形式语言与自动机试题解析
  10. spring cloud oauth2 资源服务器配置