一、MariaDB安装

  1. yum install -y mariadb mariadb-server

二、初始化MariaDB

  1. # 初始化设置
  2. mysql_secure_installation

三、MariaDB优化相关

  • 设置编码
    set names utf8;
  • 禁止域名解析
    编辑/etc/my.cnf并添加如下内容:

    [mysqld]
    # 禁止域名解析
    skip-name-resolve
    
  • 开启独立表空间
    查询开启状态: ```

    进入数据库后输入

    show variables like ‘%per_table%’;

若为如下则说明未开启:

+———————————-+———-+ | Variable_name | Value | +———————————-+———-+ | innodb_file_per_table | OFF | +———————————-+———-+


<br />编辑/etc/my.cnf并添加如下内容:

[mysqld]

开启独立表空间

innodb-file-per-table=1


- 更换数据储存目录<br />
1.创建/data目录

mkdir /data chmod 777 /data


<br />2.停止mariadb服务<br />
`systemctl stop mariadb.service`
<br />3.把/var/lib/mysql整个目录复制到/data<br />
`cp -r /var/lib/mysql/* /data/`
<br />4.编辑mariadb的配置文档/etc/my.cnf<br />
在[client]下添加:<br />
原来的`socket=/var/lib/mysql/mysql.sock`注释掉,添加`socket=/data/mysql.sock`<br />
在[mysqld]下添加:<br />
原来的`socket=/var/lib/mysql/mysql.sock`注释掉,添加`socket=/data/mysql.sock`<br />
`datadir =/data`   (这行没有,需要自己加上)<br />
保存后退出。
<br />5.改变/data/mysql目录属主<br />
`chown -R mysql:mysql /data/mysql`
<br />6.重新启动mariadb服务<br />
`systemctl start mariadb.service`
- 开启root远程登录<br />
允许所有ip远程登录:<br />
`grant all privileges on *.* to root@"%" identified by "000000";`<br />
允许指定网段远程登录:<br />
`grant all privileges on *.* to root@'192.168.9.%' identified by "000000";`<br />
注:by后面是对应用户密码,其他用户操作同理。
<br />查看用户权限:`show grants for 你的用户`<br />
如:`show grants for root@'localhost';`
- 查看默认存储引擎<br />
`show variables like "%storage_engine%";`
- 查看当前用户<br />
`show user();`


<a name="d9767d0b"></a>
## 四、MariaDB查询语句


<a name="8a5bdecb"></a>
#### 1数据库操作

- 创建数据库<br />
`create database 数据库名;`
- 删除数据库<br />
`drop database 数据库名;`


<a name="709b318f"></a>
#### 2数据导入导出

- 导入数据库:<br />
`mysql -u用户名 -p密码 数据库名 < 数据库文件`
- 导出数据库:<br />
`mysqldump -u用户名 -p密码 数据库名 > 导出的文件名`
- 导出表:<br />
`mysqldump -u用户名 -p密码 数据库名 表名> 导出的文件名`


<a name="425a9b16"></a>
#### 3用户管理

- 创建用户

create user ‘用户名’@’主机’ identified by ‘密码’; insert into mysql.user (host,user,password) values(“%”,”用户名”,password(“密码”));


- 删除用户<br />
`delete from user where user="用户名";`
- 授权用户

grant select,delete,update,create on . to 用户@”主机” identified by “密码”; //授权用户对所有数据库查询、删除、更新、创建权限 grant all privileges on . to 用户@”主机” identified by “密码”; //授权用户对所有数据库所有权限 ```

  • 刷新权限
    flush privileges;