zoukankan      html  css  js  c++  java
  • centos7安装mariadb数据库

    1.yum 得配置yum源,配置阿里云的 两个 yum源 ,阿里云的yum源中,会有 mariadb的软件包

    阿里云的yum仓库中,mariadb版本如下

    mariadb x86_64 1:5.5.60-1.el7_5 os 8.9 M
    mariadb-server x86_64 1:5.5.60-1.el7_5 os 11 M

    这等版本太低,安全性太低,企业因此会选择mariadb官方 提供的yum源,下载官方mariadb包

    配置mariadb官方的yum源
    1.进入yum仓库 /etc/yum.repos.d/目录下
    手动创建一个 mariadb.repo
    写入如下内容
    [mariadb]
    name = MariaDB
    baseurl = http://yum.mariadb.org/10.1/centos7-amd64
    gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
    gpgcheck=1


    2.安装
    1)此时通过yum安装的软件,都是mariadb官方的了

    2)rpm方式

    3)源码编译方式


    3.安装号了mariadb,启动服务端
    systemctl start mariadb

    4.mariadb数据库初始化

    执行如下命令
    mysql_secure_installation

    set root password?[Y/n] y #设置root密码
    之后出现
    New password: #输入要为root管理设置的数据库密码 (可以修改密码)

    Remove anonymous users? [Y/n] y #删除匿名账户

    Disallow root login remotely? [Y/n] n #禁止root管理员从远程登录 选择不禁止

    Remove test database and access to it? [Y/n] y #删除test数据库并取消对它的访问权限

    Reload privilege tables now? [Y/n] y #刷新授权表,让初始化后的设定立即生效)

    5.修改数据库的编码 s 看编码

    1)配置mysql

    1.中文编码设置,编辑mysql配置文件/etc/my.cnf,写入以下内容

    #写在 [mysqld] 下
    [mysqld] #服务端配置
    character-set-server=utf8
    collation-server=utf8_general_ci
    log-error=/var/log/mysqld.log

    #写在最底层
    [client] #客户端配置
    default-character-set=utf8
    [mysql]
    default-character-set=utf8

    配置完重启
    systemctl start mariadb

    2.授权配置 (根据自己需求 要不要创建普通用户)


    远程连接设置哦设置所有库,所有表的所有权限,赋值权限给所有ip地址的root用户
    mysql > grant all privileges on *.* to root@'%' identified by 'password';
    #创建用户
    mysql > create user 'username'@'%' identified by 'password';
    #刷新权限
    flush privileges;



    2)数据库基本命令

    #修改mysql密码
    MariaDB [(none)]> set password = PASSWORD('redhat123');
    生产环境里不会死磕root用户,为了数据库的安全以及和其他用户协同管理数据库,就需要创建其他数据库账户,然后分配权限,满足工作需求。

    MariaDB [(none)]> create user yuchao@'127.0.0.1' identified by 'redhat123';

    MariaDB [(none)]> use mysql;

    MariaDB [mysql]> select host,user,password from user where user='yuchao';
    切换普通用户yuchao,查看数据库信息,发现无法看到完整的数据库列表

    [root@master ~]# mysql -uyuchao -p -h 127.0.0.1 #远程连接数据库 127.0.0.1是本机

    MariaDB [(none)]> show databases;

    数据库权限设置
    mysql使用grant命令对账户进行授权,grant命令常见格式如下

    grant 权限 on 数据库.表名 to 账户@主机名 对特定数据库中的特定表授权
    grant 权限 on 数据库.* to 账户@主机名   对特定数据库中的所有表给与授权
    grant 权限1,权限2,权限3 on *.* to 账户@主机名    对所有库中的所有表给与多个授权
    grant all privileges on *.* to 账户@主机名    对所有库和所有表授权所有权限
    退出数据库,使用root登录,开始权限设置


    [root@master ~]# mysql -uroot -p

    MariaDB [(none)]> use mysql;

    MariaDB [(none)]> grant all privileges on *.* to yuchao@127.0.0.1;

    MariaDB [mysql]> show grants for yuchao@127.0.0.1;

    移除权限

    MariaDB [(none)]> revoke all privileges on *.* from yuchao@127.0.0.1;


    创建数据库命令
    create database 库名;

    创建表命令
    create table 表名(id字段名 int类型,sex字段名 char(10)类型加长度);

    往表中插入信息
    insert into 表名(id字段,sex字段) values(1字段值,"雌雄同体"字段值);

    展示数据库信息
    show create database 库名;

    删除数据库
    drop database 库名;

    6.远程连接数据库

    #创建普通用户
    create user zhaoshixun@'%' identified by 'zsx666'; #%表示可以在任何ip登陆


    #对用户授权,给予root用户远程登录的权限

    #给予root权限,所有的权限,并且可以远程登录

    grant all privileges on *.* to root@"%" identified by "redhat";


    #立即刷新授权表

    flush privileges;

    备份mysql的数据
    1.命令
    mysqldump -u root -p --all-databases > /tmp/db.dump #导出所有的数据库到这个文件中
    指定ace_crm数据库导出
    mysqldump -uroot -p --database ace_crm > /tmp/ace_crm.dump


    #参数 --all-databases 导出所有的数据库

    2.导入数据库信息
    mysql -uroot -p < /tmp/db.dump # 从刚才的文件中导入到数据库中 数据库就恢复了

    #导入数据方式2
    进入数据库后,执行
    MariaDB[(none)]> source /tmp/db.dump

  • 相关阅读:
    HDU 1022 Train Problem I
    HDU 1702 ACboy needs your help again!
    HDU 1294 Rooted Trees Problem
    HDU 1027 Ignatius and the Princess II
    HDU 3398 String
    HDU 1709 The Balance
    HDU 2152 Fruit
    HDU 1398 Square Coins
    HDU 3571 N-dimensional Sphere
    HDU 2451 Simple Addition Expression
  • 原文地址:https://www.cnblogs.com/yuchen1301152/p/10539379.html
Copyright © 2011-2022 走看看