zoukankan      html  css  js  c++  java
  • Mysql MariaDB安装

    1、安装

    本人使用的是CentOS 7 ,默认yum安装,但默认yum安装版本有点低,可根据需要选择升级,我这里选择先升级再安装。

    更新yum

    //更新yum包
    yum -y update
    

    配置yum源

    vim /etc/yum.repos.d/MariaDB.repo
    

    打开的文本中输入以下内容:

    [mariadb]
    name = MariaDB
    baseurl = http://yum.mariadb.org/10.1/rhel7-amd64
    gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
    gpgcheck=1
    

    目前的稳定版本为10.1,再安装的时候可去这里查询https://downloads.mariadb.org/mariadb/repositories/#mirror=tuna&distro=CentOS&distro_release=centos7-amd64--centos7

    保存并退出,执行安装命令:

    //使用配置的yum安装
    yum install MariaDB-server -y
    

    如果使用系统自带yum安装,请执行以下命令:

    //安装server
    yum install mariadb-server mariadb -y
    

    注意:这里我仅安装Server,暂不安装Client,如果有需要安,可以执行以下命令:

    //配置yum源安装
    yum -y install MariaDB-server MariaDB-client
    
    //使用默认安装
    yum -y install mariadb*
    

    2、服务

    安装完成后,我们需要执行以下命令:  

    //启动服务
    systemctl start mariadb
    //开机启动
    systemctl enable mariadb
    
    //运行状态
    systemctl status mariadb
    

    3、配置

    现在我们需要进行一些基本的安全设置。执行命令:

    mysql_secure_installation
    

    执行上边的命令,进入设置引导

    //1、确认密码
    Enter current password for root (enter for none):  //直接回车
    //2、设置新密码
    Set root password? [Y/n] y
    //3、移出匿名用户
    Remove anonymous users? [Y/n] y
    //4、禁用远程登陆
    Disallow root login remotely? [Y/n] y
    //5、移出测试数据库
    Remove test database and access to it? [Y/n] y
    //6、重新加载权限
    Reload privilege tables now? [Y/n] y
    
    
    Thanks for using MariaDB!
    结束
    

    中文乱码配置:

    //打开配置
    vim /etc/my.cnf
    

    在结尾处追加以下命令:

    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
    [mysqld]
    character-set-server=utf8
    

      重启服务:

    systemctl restart mariadb
    

      登录查看效果:

    //登录
    mysql -u root -p
    //查看当前数据默认字符集
    show variables like "%character%";
    show variables like "%collation%";
    

    4、用户及权限

    //查看版本
    mysql -V
    //登录
    mysql -u root -p
    
    //重启
    systemctl restart mariadb
    //停止
    systemctl stop mariadb.service

      

    //创建用户
    CREATE USER 'testuser'@'%' IDENTIFIED BY '123456'; 
    //用户授权
    GRANT select,insert ON test.* TO 'testuser'@'%';
    //创建用户并授权
    GRANT select ON test.* TO 'testuser'@'%' IDENTIFIED BY '123456';
    //ALL PRIVILEGES 表示所有权限
    GRANT ALL PRIVILEGES ON test.* TO 'testuser'@'%' IDENTIFIED BY '0123456789' WITH GRANT OPTION;
    //回收权限
    REVOKE select ON test.* From 'testuser'@'%';
    //删除用户
    DROP USER 'testuser'@'%';
    //查看用户权限
    SHOW GRANTS FOR testuser;
    
    //查看用户授权表
    select * from mysql.user
    
    //修改密码
    UPDATE mysql.user SET password=password("0123456789") WHERE user='testuser';
    
    //刷新
    FLUSH PRIVILEGES;
    

      

      说明:

    用户账号:'username'@'host'
    禁止检查主机名:在my.cnf配置文件中的[mysqld]段添加skip_name_resolve = ON 一般都得添加此选项以提升性能
    创建用户账号:CREATE USER 'username'@'host' [IDENTIFIED BY 'password'];
    例如:create user 'testuser'@'192.168.%.%' identified by 'testpass'; 记得刷新用户授权表flush privileges;
    删除用户账号:DROP USER 'user'@'host' [, user@host] ...
    例如:drop user 'testuser'@'192.168.%.%';

    查看用户授权表命令:select * from mysql.user;    

    授权:GRANT priv_type,... ON [object_type] db_name.tbl_name TO 'user'@'host' [IDENTIFIED BY 'password'];

    例如:grant select,insert on test1.students to 'testuser'@'192.168.%.%';

    查看指定用户所获得的授权:SHOW GRANTS FOR CURRENT_USER;

    回收权限:REVOKE priv_type, ... ON db_name.tbl_name FROM 'user'@'host';

    例如:revoke insert on test1.students from 'testuser'@'192.168.%.%';

    注意:MariaDB服务进程启动时,会读取mysql库的所有授权表至内存中

    1. GRANT或REVOKE命令等执行的权限操作会保存于表中,MariaDB此时一般会自动重读授权表,权限修改会立即生效
    2. 其它方式实现的权限修改,要想生效,必须手动运行FLUSH PRIVILEGES命令  

    5、其它

    升级说明:

     如果你之前已进行过安装,想要进行升级,可先进行卸载,再重复上述步骤安装,注意数据库的备份。

    //停止服务
    systemctl stop mariadb
    //移除包
    yum remove mariadb-server mariadb mariadb-libs
    //清理
    yum clean all
    

      常用操作:

    //使用数据库
    use database;
    //查看所有数据库
    show databases;
    //删除名字为dbname的数据库
    drop database dbname;
    

     设置远程登陆:

    //打开配置
    vim /etc/my.cnf
    
    //设置以下节点
    [mysqld]
    port=25513
    
    //重启
    systemctl restart mariadb
    //设置防火墙
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    //加载设置
    firewall-cmd --reload
    

      

       

     参考文献:http://www.cnblogs.com/linuxboke/p/5528209.html

    文章出处:http://www.cnblogs.com/anech/p/6844849.html

  • 相关阅读:
    MVC实战之排球计分(六)—— 使用EF框架,创建Controller,生成数据库。
    MVC实战之排球计分(五)—— Controller的设计与实现
    MVC实战之排球计分(四)—— View设计与实现
    MVC实战之排球计分(三)—— 模型类的设计与实现
    MVC实战之排球计分(二)—— 构架概要设计
    MVC实战之排球计分(一)—— 需求分析与数据库设计
    连接虚机中的mysql服务
    mongodb3集群搭建
    spring-data-redis配制
    redis4集群
  • 原文地址:https://www.cnblogs.com/anech/p/6844849.html
Copyright © 2011-2022 走看看