准备mariadb-5.5.57-linux-x86_64.tar.gz二进制程序包
此包是经过编译的,也就是说我们要在特定的目录下安装;
步骤1、准备mysql用户
mkdir /app/data #此目录是存放mysql数据库、表的 useradd -r -m -d /app/data -s /sbin/nologin mysql #创建mysql用户,很多操作都是以mysql用户身份执行 |
步骤2、准备二进制文件
tar -xvf mariadb-5.5.57-linux-x86_64.tar.gz -C /usr/local/ #将二进制软件包解压缩到指定目录/usr/local下 #这个目录是在编译时就已经定死的,必须在此目录下 cd /usr/local/ #同样是提前定好的,目录名称也必须是mysql |
步骤3、编辑配置文件
mkdir /etc/mysql #我们需要修改mysql的配置文件,复制模板修改即可 # The MariaDB server innodb_file_per_table = on #添加以上三行内容,最主要的是第一行 #此时/app/data还没有任何数据文件 |
步骤4、创建系统数据库mysql
cd /usr/local/mysql/ ./scripts/mysql_install_db --datadir=/app/data --user=mysql #创建数据库文件,同时还会创建test测试数据库等文件,这时/app/data下就有很多文件 |
步骤5、添加mysql服务
cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld #将mysql的服务脚本复制到系统启动加载的目录下,系统启动时就会加载此脚本开启mysql服务 chkconfig --add mysqld chkconfig mysqld on #设置mysqld开机自启动 |
步骤6、启动mysqld
service mysqld start #此时启动服务会提示失败信息,那是因为日志文件未指定权限 #在/etc/my.cnf文件中明确之处日志文件的路径,即log-error=/var/log/mysqld.log #所以我们要确保此文件存在并且mysql对其具有读写权限 touch /var/log/mysqld.log setfacl -m u:mysql:rw /var/log/mysqld.log service mysqld start #此时再启动服务就能成功 #服务虽然能够启动,但是mysql依然无法使用,提示没有此命令 #其原因在于未在全局变量PATH中指定mysql的命令 vim /etc/profile.d/mysql.sh MYSQL_HOME=/usr/local/mysql/bin/ . /etc/profile.d/mysql.sh //修改完记得使之生效 #至此就可以使用mysql了 |
大家可能会奇怪,/etc/mysql/my.cnf与/etc/my.cnf有什么区别?
其实二者都是mysql的配置文件,只是执行先后顺序不同而已,先执行/etc/my.cnf再执行/etc/mysql/my.cnf,
也就是说后者的优先级高于前者,所以我们在/etc/mysql/my.cnf下修改配置信息;
至于日志文件因为只有/etc/my.cnf文件定义了,所以/etc/mysql/my.cnf中就无需多此一举再次配置了;
步骤7、安全初始化数据库
/usr/local/mysql/bin/mysql_secure_installation //由于mysql刚安装,并没有任何安全策略,任何匿名用户都可登陆,存在安全隐患 #设置数据库管理员root口令 |
以上就是以二进制方式安装mariadb的所有步骤,结束!