CentOS 安装 MariaDB 全部命令

如果要清晰的安装mariadb,你需要有些基本知识:

一般的linux管理命令。

my.cnf的基本配置。

OS:

[root@iZbp1hinmw0qdzo0fat ~]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.2.1511 (Core)
Release: 7.2.1511
Codename: Core
[root@iZbp1hinmw0qdzo0fat ~]# uname -a
Linux iZbp1hinmw0qdzo0fat 3.10.0-514.6.2.el7.x86_64 #1 SMP Thu Feb 23 03:04:39 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@iZbp1hinmw0qdzo0fat ~]#

Maria DB:

mariadb-10.1.22-linux-x86_64.tar.gz

下载安装包

通常情况我们都安装在/usr/local目录, 当你有一台公网服务器时,下载安装包到本地在上传是十分痛苦的过程。最后直接下载到你的公网服务器。

cd /usr/local
wget https://downloads.mariadb.org/interstitial/mariadb-10.1.22/bintar-linux-x86_64/mariadb-10.1.22-linux-x86_64.tar.gz/from/http%3A//mirrors.tuna.tsinghua.edu.cn/mariadb/?serve&change_mirror_from=1

下载之后名字有点乱,重新改一下。
mv index* mariadb-10.1.22-linux-x86_64.tar.gz

groupadd mysql
useradd -g mysql mysql

tar -zxvpf mariadb-10.1.22-linux-x86_64.tar.gz

 

方便安装多版本

ln -s mariadb-10.1.22-linux-x86_64 mysql
cd mysql

创建安装数据的目录,你用默认的也可以。
mkdir /mnt/mysql/mysqlcnf
mkdir /mnt/mysql/mysqldata
mkdir /mnt/mysql/log/
chown -R mysql /mnt/mysql/

创建自己的实例控制文件。

cp /etc/my.cnf /mnt/mysql/mysqlcnf/my1.cnf
vi /mnt/mysql/mysqlcnf/my1.cnf

./scripts/mysql_install_db --defaults-file=/mnt/mysql/mysqlcnf/my1.cnf --user=mysql

此时二进制文件,自带数据,目录已经安装完毕。

更改下权限。

chown -R root .
chown -R mysql data

启动mysql, 注意,一般不用mysqld。 mysqld_safe更加安全。

./bin/mysqld_safe --defaults-file=/mnt/mysql/mysqlcnf/my1.cnf --user=mysql &

touch /etc/profile.d/path.sh

下面更改path可以不参考,我也没能把它搞得生效,linux太多发行版本了。

vi /etc/profile.d/path.sh
#add below line
#export PATH=$PATH:/usr/local/mysql/bin/

设置mysql初始密码:

mysqladmin --defaults-file=/mnt/mysql/mysqlcnf/my1.cnf -u root password 'root'

测试本地登录
mysql -u root -p

创建数据库,用户。
create database db1;

CREATE USER 'admin'@'%' IDENTIFIED BY 'admin';

CREATE USER 'admin'@'localhost' IDENTIFIED BY 'admin';


CREATE USER 'user'@'localhost' IDENTIFIED BY 'user';
CREATE USER 'user'@'%' IDENTIFIED BY 'user';

grant all privileges on db1to admin@'%';


grant select,insert,update,delete on db1.* to user@'%';

注意:centos7 以后,防火墙换命令了
systemctl start firewalld.service
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

到此时,所有命名全部完结。你可以测试从远程连接数据库了。

原文地址:https://www.cnblogs.com/zhuchunxu/p/6616500.html