欢迎来到阿里云授权服务中心典名科技有限公司!咨询电话:023-66887777 18623333330

微信
手机版
网站地图

CentOS7.X怎么安装MariaDB数据库

2021-08-18 09:28:14 投稿人 : admin 围观 : 131 次 0 评论

这篇文章主要介绍“CentOS7.X怎么安装MariaDB数据库”,在日常操作中,相信很多人在CentOS7.X怎么安装MariaDB数据库问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CentOS7.X怎么安装MariaDB数据库”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

image.png

一、安装数据库前准备:

       1、查看 虚机版本

[root@ywl0115 ~]# cat /etc/centos-releaseCentOS Linux release 7.3.1611 (Core)

        2、查看 虚机是否有自带MariaDB数据库

[root@ywl0115 ~]# rpm -qa | grep mariadbmariadb-libs-5.5.52-1.el7.x86_64

     3、如果有MariaDB数据库,卸载自带的

[root@ywl0115 ~]# rpm -e mariadb-libs-5.5.52-1.el7.x86_64

 二、添加yum源,安装数据库

    1、添加MariaDB.repo文件

MaraDB数据官网yum连接

https://downloads.mariadb.org/mariadb/repositories/#mirror=tuna&distro=CentOS&distro_release=centos7-amd64--centos7&version=10.2

选中版本后把红色框的文字拷贝到MariaDB.repo

[root@ywl0115 ~]# cd /etc/yum.repos.d/[root@ywl0115 yum.repos.d]# lsCentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repoCentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo[root@ywl0115 yum.repos.d]# vim MariaDB.repo [root@ywl0115 yum.repos.d]# lsCentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repoCentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  MariaDB.repo[root@ywl0115 yum.repos.d]# cat MariaDB.repo # MariaDB 10.2 CentOS repository list - created 2019-01-18 09:12 UTC# http://downloads.mariadb.org/mariadb/repositories/[mariadb]name = MariaDBbaseurl = http://yum.mariadb.org/10.2/centos7-amd64gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDBgpgcheck=1[root@ywl0115 yum.repos.d]#

    2、使用YUM 安装数据库 MariaDB

     (1)、yum安装

yum -y install MariaDB-client MariaDB-server MariaDB-devel参数 -y 是确认,不用提示,不输时安装过程中会出现提示需要选择MariaDB-server:服务器端MariaDB-client :客户端,用于连接并操作Mysql服务器MariaDB-devel:包含开发首要的文件和一些静态库,可以不安装,如果你想要编译其它MySQL客户端,例如Perl模块,则需要安装该RPM包

(2)、启动数据库

[root@ywl0115 ~]# systemctl start mariadb ##开启[root@ywl0115 ~]# systemctl status mariadb ## 查看状态● mariadb.service - MariaDB 10.2.21 database server   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)  Drop-In: /etc/systemd/system/mariadb.service.d           └─migrated-from-my.cnf-settings.conf   Active: active (running) since Fri 2019-01-18 17:49:39 CST; 8s ago     Docs: man:mysqld(8)           https://mariadb.com/kb/en/library/systemd/  Process: 2598 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)  Process: 2553 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`/usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (code=exited, status=0/SUCCESS)  Process: 2551 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS) Main PID: 2565 (mysqld)   Status: "Taking your SQL requests now..."   CGroup: /system.slice/mariadb.service           └─2565 /usr/sbin/mysqldJan 18 17:49:39 ywl0115.novalocal mysqld[2565]: 2019-01-18 17:49:39 140654635174016 [Note] Pl...d.Jan 18 17:49:39 ywl0115.novalocal mysqld[2565]: 2019-01-18 17:49:39 140653568702208 [Note] In...39Jan 18 17:49:39 ywl0115.novalocal mysqld[2565]: 2019-01-18 17:49:39 140654635174016 [Note] Se...'.Jan 18 17:49:39 ywl0115.novalocal mysqld[2565]: 2019-01-18 17:49:39 140654543447808 [Warning]...deJan 18 17:49:39 ywl0115.novalocal mysqld[2565]: 2019-01-18 17:49:39 140654543447808 [Warning]...deJan 18 17:49:39 ywl0115.novalocal mysqld[2565]: 2019-01-18 17:49:39 140654635174016 [Note] Re...edJan 18 17:49:39 ywl0115.novalocal mysqld[2565]: 2019-01-18 17:49:39 140654635174016 [Note] Ad...leJan 18 17:49:39 ywl0115.novalocal mysqld[2565]: 2019-01-18 17:49:39 140654635174016 [Note] /u...s.Jan 18 17:49:39 ywl0115.novalocal mysqld[2565]: Version: '10.2.21-MariaDB'  socket: '/var/lib...erJan 18 17:49:39 ywl0115.novalocal systemd[1]: Started MariaDB 10.2.21 database server.Hint: Some lines were ellipsized, use -l to show in full.

如果看到 :

     Active: active (running) since Fri 2019-01-18 17:49:39 CST; 8s ago

    启动成功。

    (3)、MariaDB安全配置(这是和MySQL最大的不同)

输入命令:    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] <– 是否重新加载权限表,回车

[root@ywl0115 ~]# mysql_secure_installationNOTE: 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 currentpassword for the root user.  If you've just installed MariaDB, andyou 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): ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)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 MariaDBroot user without the proper authorisation.You already have a root password set, so you can safely answer 'n'.Change the root password? [Y/n] te^H^HyYou already have a root password set, so you can safely answer 'n'.Change the root password? [Y/n] yNew password: Re-enter new password: Password updated successfully!Reloading privilege tables.. ... Success!By default, a MariaDB installation has an anonymous user, allowing anyoneto log into MariaDB without having to have a user account created forthem.  This is intended only for testing, and to make the installationgo a bit smoother.  You should remove them before moving into aproduction environment.Remove anonymous users? [Y/n] y ... Success!Normally, root should only be allowed to connect from 'localhost'.  Thisensures that someone cannot guess at the root password from the network.Disallow root login remotely? [Y/n] y ... Success!By default, MariaDB comes with a database named 'test' that anyone canaccess.  This is also intended only for testing, and should be removedbefore moving into a production environment.Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success!Reloading the privilege tables will ensure that all changes made so farwill 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 MariaDBinstallation should now be secure.Thanks for using MariaDB!

     注:若后续想修改安全设置,使用命令:

            mysql_secure_installation

   (4)、初始化MariaDB完成,接下来测试登录

               mysql -uroot -p123456 <- 123456设的密码

     (5)、配置MairaDB的字符集

                # 编辑/etc/my.cnf

               vim /etc/my.cnf

              配置【my.cnf】前:

# 在[mysqld]标签下添加下面内容,没有自己添加[mysqld]# 默认存储引擎default-storage-engine = innodb# 独立表空间innodb_file_per_table# 设置最大连接(用户)数max_connections = 4096# 排序规则 collation-server = utf8_general_ci# 服务器字符集character-set-server = utf8[mysqld_safe]log-error=/var/log/mariadb/mariadb.logpid-file=/var/rn/mariadb/mariadb.pid

配置【my.cnf】后

# 编辑/etc/my.cnf.d/client.cnf(mariadb没有这个文件,可不配置)vim /etc/my.cnf.d/client.cnf# 在[client]标签下添加下面内容default-character-set=utf8

# 编辑/etc/my.cnf.d/mysql-clients.cnfvim /etc/my.cnf.d/mysql-clients.cnf# 在[mysql]标签下添加下面内容default-character-set=utf8

配置完成后 systemctl restart mariadb 重启服务。

Show variables like %character%;

三、用户基本操作

    (1)、创建用户命令

create user username@localhost identified by 'password';

    (2)、新用户创建完成,但是此刻如果以此用户登陆的话,会报错,因为我们还没有为这个用户分配相应权限,分配权限的命令如下:

# 授予username用户在所有数据库上的所有权限:GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'password';#授予username只能执行 select 和 update 命令:GRANT SELECT, UPDATE ON wordpress.* TO 'username'@'localhost' IDENTIFIED BY 'password';格式:    ALL PRIVILEGES :表示所有权限    *.* : 表示所有 数据库 所有表    'username'@'localhost' 表示从本地库主机登陆的username用户    用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。    identified by 'password'  表示 username用户的密码    with grant option  表示该用户可以将这些权限赋予其它用户例子:    mysql> grant all privileges on *.*  to 'root'@'%' identified by '123456' with grant option;

    (3)、如果此时发现刚刚给的权限太大了,如果我们只是想授予它在某个数据库上的权限,那么需要切换到root 用户撤销刚才的权限,重新授权:

REVOKE ALL PRIVILEGES ON *.* FROM 'username'@'localhost';GRANT ALL PRIVILEGES ON wordpress.* TO 'username'@'localhost' IDENTIFIED BY 'password';

    (4)、每当调整权限后,通常需要执行以下语句刷新权限

FLUSH PRIVILEGES;

权限列表:ALTER: 修改表和索引。CREATE: 创建数据库和表。DELETE: 删除表中已有的记录。DROP: 抛弃(删除)数据库和表。INDEX: 创建或抛弃索引。INSERT: 向表中插入新行。REFERENCE: 未用。SELECT: 检索表中的记录。UPDATE: 修改现存表记录。FILE: 读或写服务器上的文件。PROCESS: 查看服务器中执行的线程信息或杀死线程。RELOAD: 重载授权表或清空日志、主机缓存或表缓存。SHUTDOWN: 关闭服务器。ALL: 所有权限,ALL PRIVILEGES同义词。USAGE: 特殊的 "无权限" 权限。用 户账户包括 "username" 和 "host" 两部分,后者表示该用户被允许从何地接入。tom@'%' 表示任何地址,默认可以省略。还可以是 "tom@192.168.1.%"、"tom@%.abc.com" 等。数据库格式为 db@table,可以是 "test.*" 或 "*.*",前者表示 test 数据库的所有表,后者表示所有数据库的所有表。子句 "WITH GRANT OPTION" 表示该用户可以为其他用户分配权限。

    (5)、远程工具测试

用第三方客户端连接成功,MariaDB安装成功!

到此,关于“CentOS7.X怎么安装MariaDB数据库”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注阿里云网站,小编会继续努力为大家带来更多实用的文章!

版权声明:本站部分文章内容、图片来源于网友推荐、互联网收集整理而来,仅供大家学习参考,不代表本站立场,如有侵权,请联系站长,我们会第一时间处理!本站原创内容未经允许不得转载,或转载时需注明出处:典名科技资讯门户

相关文章

  • oracle临时表空间的增删改查命令
    oracle临时表空间的增删改查命令

    oracle临时表空间的增删改查命令发布时间:2021-08-31 01:57:42来源:阿里云阅读:60作者:chen栏目:关系型数据库本篇内容介绍了“oracle临时表空间的增删改查命令”的有关知识,在实际案例的操作过程中,不少人都会遇...

    2021-08-31 11:52:19
  • Redis4.0从库复制报错"master_link_status:down"怎么处理
    Redis4.0从库复制报错"master_link_status:down"怎么处理

    “Redis4.0从库复制报错"master_link_status:down"怎么处理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redis4.0从库复制报错&quo...

    2021-08-31 11:52:19
  • MySQL数据库中有哪些锁
    MySQL数据库中有哪些锁

    “MySQL数据库中有哪些锁”,在日常操作中,相信很多人在MySQL数据库中有哪些锁问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL数据库中有哪些锁”的疑惑有所帮助!接下来!在 MySQL 数据库中,...

    2021-08-31 11:24:19
  • MSSQL报错参数数据类型text对于replace函数的参数1无效怎么解决
    MSSQL报错参数数据类型text对于replace函数的参数1无效怎么解决

    “MSSQL报错参数数据类型text对于replace函数的参数1无效怎么解决”,在日常操作中,相信很多人在MSSQL报错参数数据类型text对于replace函数的参数1无效怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作...

    2021-08-31 11:21:19
  • solaris11 ssh怎么禁止root用户连接
    solaris11 ssh怎么禁止root用户连接

    “solaris11 ssh怎么禁止root用户连接”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“solaris11 ssh怎么禁止root用户连接”吧!在虚拟机中新安装的solaris11,安...

    2021-08-31 11:20:19
  • 怎么用SQL语句查看SQL Server的结构信息
    怎么用SQL语句查看SQL Server的结构信息

    “怎么用SQL语句查看SQL Server的结构信息”,在日常操作中,相信很多人在怎么用SQL语句查看SQL Server的结构信息问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用SQL语句查看SQL S...

    2021-08-31 11:04:20
  • sqlplus和sqlldr工具的安装方法
    sqlplus和sqlldr工具的安装方法

    “sqlplus和sqlldr工具的安装方法”。本文介绍的方法操作简单快捷,实用性强。sqlplus和sqlldr工具的安装方法”吧!不管安装什么客户端工具都需要先安装instantclient-basic-linux.x64-11.2.0...

    2021-08-31 10:59:20
  • MHA的安装和部署步骤
    MHA的安装和部署步骤

    “MHA的安装和部署步骤”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!##################MHA安装和部署###########...

    2021-08-31 10:52:20
  • redis4.0下MEMORY命令详解
    redis4.0下MEMORY命令详解

    “redis4.0下MEMORY命令详解”,在日常操作中,相信很多人在redis4.0下MEMORY命令详解问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”redis4.0下MEMORY命令详解”的疑惑有所帮助...

    2021-08-31 10:52:19
  • MySQL内存线程独享使用的方法
    MySQL内存线程独享使用的方法

    “MySQL内存线程独享使用的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL内存线程独享使用的方法”吧!  今天这篇文章暂时先分析 MySQL 中主要的 “线程独享内存” 的。...

    2021-08-25 10:37:36
发表评论