zoukankan      html  css  js  c++  java
  • zz-CentOS 7 通过 yum 安装 MariaDB

    https://zhuanlan.zhihu.com/p/49046496


    以下操作都以 root 用户进行操作

    以下操作都以 root 用户进行操作

    以下操作都以 root 用户进行操作

    安装

    安装 mariadb 服务

    # yum install -y mariadb-server

    安装 mariadb 命令行客户端

    # yum install -y mariadb

    安装 mariadb C library

    # yum install -y mariadb-libs

    安装 mariadb 开发包

    # yum install -y mariadb-devel

    更改配置

    更改 /etc/my.cnf.d/client.cnf 文件

    [client] 下加一行配置 default-character-set=utf8

    最终内容

    #
    # These two groups are read by the client library
    # Use it for options that affect all clients, but not the server
    #
    
    
    [client]
    default-character-set = utf8
    
    # This group is not read by mysql client library,
    # If you use the same .cnf file for MySQL and MariaDB,
    # use it for MariaDB-only client options
    [client-mariadb]
    

     

    更改 /etc/my.cnf.d/mysql-clients.cnf 文件

    [mysql] 下加一行配置 default-character-set=utf8

    最终内容

    #
    # These groups are read by MariaDB command-line tools
    # Use it for options that affect only one utility
    #
    
    [mysql]
    default-character-set = utf8
    
    [mysql_upgrade]
    
    [mysqladmin]
    
    [mysqlbinlog]
    
    [mysqlcheck]
    
    [mysqldump]
    
    [mysqlimport]
    
    [mysqlshow]
    
    [mysqlslap]

     

    更改 /etc/my.cnf.d/server.cnf 配置

    [mysqld] 下加配置

    collation-server = utf8_general_ci

    init-connect='SET NAMES utf8'

    character-set-server = utf8

    sql-mode = TRADITIONAL

    最终内容

    #
    # These groups are read by MariaDB server.
    # Use it for options that only the server (but not clients) should see
    #
    # See the examples of server my.cnf files in /usr/share/mysql/
    #
    
    # this is read by the standalone daemon and embedded servers
    [server]
    
    # this is only for the mysqld standalone daemon
    [mysqld]
    collation-server = utf8_general_ci
    init-connect = 'SET NAMES utf8'
    character-set-server = utf8
    
    sql-mode = TRADITIONAL
    
    # this is only for embedded server
    [embedded]
    
    # This group is only read by MariaDB-5.5 servers.
    # If you use the same .cnf file for MariaDB of different versions,
    # use this group for options that older servers don't understand
    [mysqld-5.5]
    
    # These two groups are only read by MariaDB servers, not by MySQL.
    # If you use the same .cnf file for MySQL and MariaDB,
    # you can put MariaDB-only options here
    [mariadb]
    
    [mariadb-5.5]

     

    以上配置的更改参考

    Setting Character Sets and Collations​mariadb.comSQL_MODE​mariadb.com

     

    启动

    启动服务

    # systemctl start mariadb

    设置服务开启自启动

    # systemctl enable mariadb

    查看服务状态

    # systemctl status mariadb

    可能的输出为,注意到 Active 状态为 active (running)

    ● mariadb.service - MariaDB database server
       Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
       Active: active (running) since 五 2018-11-09 12:49:23 CST; 19min ago
     Main PID: 1510 (mysqld_safe)
       CGroup: /system.slice/mariadb.service
               ├─1510 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
               └─2030 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-...
    
    11月 09 12:49:15 peixinchen.host systemd[1]: Starting MariaDB database server...
    11月 09 12:49:17 peixinchen.host mariadb-prepare-db-dir[1062]: Database MariaDB is probably initialized in /var/lib/m...ne.
    11月 09 12:49:19 peixinchen.host mysqld_safe[1510]: 181109 12:49:19 mysqld_safe Logging to '/var/log/mariadb/mariadb.log'.
    11月 09 12:49:19 peixinchen.host mysqld_safe[1510]: 181109 12:49:19 mysqld_safe Starting mysqld daemon with databas...mysql
    11月 09 12:49:23 peixinchen.host systemd[1]: Started MariaDB database server.
    Hint: Some lines were ellipsized, use -l to show in full.

     

    测试连接

    使用命令行客户端尝试连接

    # mysql -uroot

    可能的输出为

    Welcome to the MariaDB monitor.  Commands end with ; or g.
    Your MariaDB connection id is 2
    Server version: 5.5.60-MariaDB MariaDB Server
    
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    MariaDB [(none)]>

     

    查看 mariadb 版本号

    MariaDB [(none)]> select version();
    +----------------+
    | version()      |
    +----------------+
    | 5.5.60-MariaDB |
    +----------------+
    1 row in set (0.01 sec)

     

    查看字符集配置

    MariaDB [(none)]> show variables like '%char%';
    +--------------------------+----------------------------+
    | 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)

    目前我们的 mariadb 用户是没有密码的,是非常不安全的,需要执行以下步骤

    # mysql_secure_installation

    选择 Y/N 的时候都选 Y,

    New password:

    Re-enter new password:

    时设置你自己的 root 密码

     

    使用命令行客户端尝试连接(带密码)

    # mysql -uroot -p

    随后输入你刚才设置的密码,可能的输出为

    Welcome to the MariaDB monitor.  Commands end with ; or g.
    Your MariaDB connection id is 2
    Server version: 5.5.60-MariaDB MariaDB Server
    
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    MariaDB [(none)]>
    编辑于 2018-11-19
  • 相关阅读:
    swoole 的 go function 是什么
    MySQL grant之后要不要跟上 flush privileges
    操作数据库
    APP端异常情况
    评论列表优化联表问题
    tp5修改数据前过滤
    字典
    if语句
    【整理】android事件传递机制
    Linux常用操作
  • 原文地址:https://www.cnblogs.com/xiaodoujiaohome/p/11405008.html
Copyright © 2011-2022 走看看