MariaDB在Linux上的权限设置主要包括以下几个方面:
mysql的系统用户,用于运行MariaDB服务。/var/lib/mysql)和相关配置文件(如/etc/my.cnf或/etc/mysql/my.cnf)需要适当的权限设置。sudo chown -R mysql:mysql /var/lib/mysql
sudo chmod -R 750 /var/lib/mysql
CREATE DATABASE和CREATE TABLE语句时,需要指定相应的权限。GRANT语句为用户授予对数据库和表的访问权限。-- 创建用户并授予权限
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';
FLUSH PRIVILEGES;
my.cnf中配置bind-address参数,控制MariaDB监听的IP地址。# 编辑my.cnf文件
sudo nano /etc/mysql/my.cnf
# 添加或修改以下行
bind-address = 127.0.0.1
# 重启MariaDB服务
sudo systemctl restart mariadb
sudo chown mysql:mysql /var/log/mysql/error.log
sudo chmod 640 /var/log/mysql/error.log
创建MariaDB用户和组:
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
设置数据目录权限:
sudo chown -R mysql:mysql /var/lib/mysql
sudo chmod -R 750 /var/lib/mysql
配置SELinux(如果启用):
sudo setsebool -P mariadb_enable_home_dirs on
sudo chcon -Rv --type=mariadb_db_t /var/lib/mysql
配置防火墙:
sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
sudo firewall-cmd --reload
编辑配置文件并重启服务:
sudo nano /etc/mysql/my.cnf
# 配置bind-address等参数
sudo systemctl restart mariadb
通过以上步骤,可以确保MariaDB在Linux系统上的权限设置既安全又合理。