CentOS7下MariaDB安装及配置
前言
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安装及配置相关推荐
- centos72安装mysql配置密码_MySQL数据库之170419、Centos7下完美安装并配置mysql5.6
本文主要向大家介绍了MySQL数据库之170419.Centos7下完美安装并配置mysql5.6 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. linxu环境: centos ...
- mantis config_inc.php g_source,CentOS7下Mantis安装与配置
Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操作的形式提供项目管理及缺陷跟踪服务.由于其安装简单.使用方面,备受广大开发和测试人员青睐.下面主要讲解下Mantis再CentOS ...
- CentOS7下Mantis安装与配置
Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操作的形式提供项目管理及缺陷跟踪服务.由于其安装简单.使用方面,备受广大开发和测试人员青睐.下面主要讲解下Mantis再CentOS ...
- CentOS7 下MariaDB安装与简单配置(最新)
前言 MySQL和MariaDB的区别: LAMP架构盛极一时,这离不开MySQL的免费与易用,但是在Oracle收购了Sun之后,很多公司开始担忧MySQL的开源前景,而最近Oracle进一步闭源的 ...
- Centos7 下cobbler安装及配置
1.背景介绍 作为运维,在公司经常遇到一些机械性重复工作要做,例如:为新机器装系统,一台两台机器装系统,可以用光盘.U盘等介质安装,1小时也完成了,但是如果有成百台的服务器还要用光盘.U盘去安装,就显 ...
- pthreads v3在centos7下的安装与配置
我的centos版本是7.4.1708,php的版本是7.2.4(注意要是线程安全版),如下图所示: 首先我们在如下网址下载好pthreads的源码: http://pecl.php.net/pack ...
- centos7php自启动,centos7系统下nginx安装并配置开机自启动操作
这篇文章主要介绍了centos7系统下nginx安装并配置开机自启动操作方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 这篇文章主要介绍了centos7系统下nginx安装并配置开机自启动操作 ...
- linux7安装pgsql数据库,CentOS7下PostgreSQL安装
环境:CentOS 7 版本:postgresql11 安装repo源 yum install https://download.postgresql.org/pub/repos/yum/reporp ...
- Hive入门教程<2> | hive在centos7下的安装部署
hive在centos7下的安装部署 前提 安装hive hadoop集群配置 hive基本操作 演示向hive中导入本地数据文件 前提 1.首先有自己的远程终端登录工具,我这里用的是mobaxter ...
- CentOS-7 下 GitLab 安装部署教程
CentOS-7 下 GitLab 安装部署教程 前言 主要内容 GitLab 介绍 本篇环境信息 准备工作 配置清华大学镜像仓库 安装基础依赖 安装 Postfix 开放 ssh 以及 http 服 ...
最新文章
- Brocade光纤交换机FOS升级
- WSL安装Oracle,WSL安装JDK8 - terwergreen的个人空间 - OSCHINA - 中文开源技术交流社区...
- 初等数论--整除--公因数一定是最大公因数的因数
- 信息学奥赛一本通 2005:【20CSPJ普及组】直播获奖 | 洛谷 P7072 [CSP-J2020] 直播获奖
- python中request方法_如何使用python语言中的request模块获取代码
- 【kafka】利用 InfoSphere Data Replication CDC for Kafka 实现高效数据复制
- 安装PHP5,安装PHP7
- 郑州没有互联网 | 畅言
- Labview OCR数字识别
- 苹果软件测试的电池损耗准确,苹果官方维修如何查看苹果iPhone电池损耗和寿命...
- css flex 布局 space-around 和 space-evenly 之间的区别css flex布局)
- curaengine linux编译,Cura Engine
- typec耳机知识介绍-数字耳机,模拟耳机
- 用Linux做wifi热点/无线路由
- 阿里聚安全发布 企业可享淘宝同款防护
- 基于React的Alita框架的jest用法
- cpu排行计算机专业,CPU天梯图2018年9月最新版 九月台式电脑CPU性能排行
- 将图和双向transformers融合的分子性质预测新工具 简称AGBT - 论文阅读
- VB基础版版务处理_20050605
- left join on详解