前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7下使用yum安装MariaDB

CentOS7下使用yum安装MariaDB

作者头像
流柯
发布2018-12-17 10:48:21
1K1
发布2018-12-17 10:48:21
举报
文章被收录于专栏:流柯技术学院流柯技术学院

从CentOS 7开始,使用 MariaDB 替代默认的 MySQL。MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

Linux下安装MariaDB官方文档参见:https://mariadb.com/kb/zh-cn/installing-mariadb-with-yum/

全部删除MySQL/MariaDB

MySQL 已经不再包含在 CentOS 7 的源中,而改用了 MariaDB;

1.使用rpm -qa | grep mariadb搜索 MariaDB 现有的包:

如果存在,使用rpm -e --nodeps mariadb-*全部删除:

代码语言:javascript
复制
[root@localhost ~]# rpm -qa | grep mariadb
[root@localhost ~]# rpm -e mysql-*

2.使用rpm -qa | grep mariadb搜索 MariaDB 现有的包:

如果存在,使用yum remove mysql mysql-server mysql-libs compat-mysql51全部删除;

代码语言:javascript
复制
[root@localhost ~]# yum remove mysql mysql-server mysql-libs compat-mysql51
代码语言:javascript
复制
[root@localhost ~]# rpm -qa|grep mariadb

3.开始新的安装, 创建MariaDB.repo文件

代码语言:javascript
复制
vi /etc/yum.repos.d/MariaDB.repo

插入以下内容:

代码语言:javascript
复制
# MariaDB 10.2.4 CentOS repository list - created 2017-05-05 16:13 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

系统及版本选择:https://downloads.mariadb.org/mariadb/repositories/#mirror=tuna

4.运行安装命令安装MariaDB

代码语言:javascript
复制
[root@localhost ~]# yum -y install MariaDB-server MariaDB-client

首先下载安装包,然后进行自动安装,安装成功之后启动MariaDB服务。

代码语言:javascript
复制
systemctl start mariadb #启动服务
systemctl enable mariadb #设置开机启动
systemctl restart mariadb #重新启动
systemctl stop mariadb.service #停止MariaDB

5.登录到数据库

  用mysql -uroot命令登录到MariaDB,此时root账户的密码为空。

6.进行MariaDB的相关简单配置,使用mysql_secure_installation命令进行配置。

代码语言:javascript
复制
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完成,接下来测试登录

代码语言:javascript
复制
mysql -uroot -ppassword

完成。

 7.配置MariaDB的字符集

  查看/etc/my.cnf文件内容,其中包含一句!includedir /etc/my.cnf.d 说明在该配置文件中引入/etc/my.cnf.d 目录下的配置文件。

  1)使用vi server.cnf命令编辑server.cnf文件,在[mysqld]标签下添加

代码语言:javascript
复制
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 目录下无server.cnf文件,则直接在/etc/my.cnf文件的[mysqld]标签下添加以上内容。

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

代码语言:javascript
复制
vi /etc/my.cnf.d/client.cnf

在[client]中添加

代码语言:javascript
复制
default-character-set=utf8

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

代码语言:javascript
复制
vi /etc/my.cnf.d/mysql-clients.cnf

在[mysql]中添加

代码语言:javascript
复制
default-character-set=utf8

 全部配置完成,重启mariadb

代码语言:javascript
复制
systemctl restart mariadb

之后进入MariaDB查看字符集

代码语言:javascript
复制
mysql> show variables like "%character%";show variables like "%collation%";

显示为

代码语言:javascript
复制
+--------------------------+----------------------------+
| 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)

字符集配置完成。

8. 添加用户,设置权限

创建用户命令

代码语言:javascript
复制
mysql>create user username@localhost identified by 'password';

直接创建用户并授权的命令

代码语言:javascript
复制
mysql>grant all on *.* to username@localhost indentified by 'password';

授予外网登陆权限 

代码语言:javascript
复制
mysql>grant all privileges on *.* to username@'%' identified by 'password';

授予权限并且可以授权

代码语言:javascript
复制
mysql>grant all privileges on *.* to username@'hostname' identified by 'password' with grant option;

 查询各Schema和Table占用的空间:

代码语言:javascript
复制
MariaDB [information_schema]> use information_schema;
MariaDB [information_schema]> select table_schema,round(sum(DATA_LENGTH/1024/1024),2) as datasize  from tables group by table_schema;
MariaDB [information_schema]> select table_name,concat(round(sum(data_length/1024/1024),2),'MB') as datasize from tables where table_schema='nemo' group by table_name;

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

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

Linux系统教程:如何检查MariaDB服务端版本  http://www.linuxidc.com/Linux/2015-08/122382.htm

MariaDB Proxy读写分离的实现 http://www.linuxidc.com/Linux/2014-05/101306.htm

Linux下编译安装配置MariaDB数据库的方法 http://www.linuxidc.com/Linux/2014-11/109049.htm

CentOS系统使用yum安装MariaDB数据库 http://www.linuxidc.com/Linux/2014-11/109048.htm

安装MariaDB与MySQL并存 http://www.linuxidc.com/Linux/2014-11/109047.htm

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-11-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档