CentOS 6:
通用二进制格式安装过程
(1) 准备数据目录
以/mydata/data为例;
(2) 配置mariadb
#添加用户,组
# groupadd -r -g 306 mysql
# useradd -r -g 306 -u 306 mysql
#解压至安装软件的指定目录/usr/local
# tar xf mariadb-VERSION.tar.xz -C /usr/local
#链接至mysql
# ln -sv /usr/local/mariadb-VERSION mysql
#进入安装目录并且将所有文件属主改为root,属组改为mysql
# cd /usr/local/mysql
# chown -R root:mysql ./*
#运行安装脚本,设置数据目录和属主
# scripts/mysql_install_db --datadir=/mydata/data --user=mysql
#将运行脚本文件复制到/etc/rc.d/init.d/改名mysqld
# cp supper-files/mysql.server /etc/rc.d/init.d/mysqld
#添加至启动列表
# chkconfig --add mysqld
(3) 准备配置文件
配置格式:类ini格式,为各程序均通过单个配置文件提供配置信息;
[prog_name]
配置文件查找次序:
/etc/my.cnf --> /etc/mysql/my.cnf --> --default-extra-file=/PATH/TO/CONF_FILE --> ~/.my.cnf
#创建配置文件目录
# mkdir /etc/mysql
#将配置文件放到目录下,改名为my,cnf
# cp support-files/my-large.cnf /etc/mysql/my.cnf
#添加三个选项:
datadir = /mydata/data
#每张表对应一个配置文件
innodb_file_per_table = on
skip_name_resolve = on
#启动时报错
/usr/local/mysql/bin/mysqld_safe_helper: Can't create/write to file '/var/log/mysqld.log' (Errcode: 13)
#原因是无法创建属组和属组为mysql的日志文件,解决办法:手动创建
vim /var/log/mysqld.log
chown mysql:mysql mysqld.log
#ss -tnl查看3306端口
#ps aux|grep mysql查看运行的脚本文件
root 2491 0.0 0.0 11472 1408 pts/0 S 23:38 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/mydata --pid-file=/mydata/localhost.localdomain.pid
mysql 2893 0.7 6.3 834620 120224 pts/0 Sl 23:38 0:02 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/mydata --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/mydata/localhost.localdomain.pid --socket=/tmp/mysql.sock --port=3306
mysqld_safe相当于我们在客户端运行的mysql命令,类似命令在安装目录下的bin目录里
MariaDB的程序组成:
C:
mysql:CLI交互式客户端程序;
mysqldump, mysqladmin...
S:
mysqld_safe
mysqld
mysqld_multi
命令行交互式客户端程序:mysql
mysql
-uUSERNAME: 用户名;默认为root
-hHOST: 服务器主机; 默认为localhost
-pPASSWORD:用户的密码; 默认为空密码
注意:mysql用户账号由两部分组成:'USERNAME'@'HOST'; 其中HOST用于限制此用户可通过哪些主机远程连接mysql服务;
支持使用通配符:
%: 匹配任意长度的任意字符;
172.16.0.0/16, 172.16.%.%
_: 匹配任意单个字符;
刚安装的默认可以使用root,无密码登录,必须运行安全管理脚本bin目录下的mysql_secure_installation重新引导设置安全权限,清除匿名用户