Mariadb 安装方式:
(1)rpm包;
(a)由OS的发行商提供
(b)程序官方提供
(2)源码包;
(3)通用二进制格式的程序包;
实验环境:
安装系统:CentOS 7
安装程序:Mariadb
安装方式:通用二进制
(1)下载程序包,并解压
# cp /usr/lib/systemd/system/mariadb.service /root //之前安装过,现在备份下
//有依赖关系
# yum remove mariadb-server
下载二进制安装的包,这里下载的为 mariadb-5.5.46-linux-x86_64.tar.gz
# ls
# tar xf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
# cd /usr/local
# ln -sv mariadb-5.5.46-linux-x86_64/ mysql //这里不建议创建mysql文件,应该用链接的方式
# groupadd -r -g 306 mysql //创建一个系统用户,安全起见
# cd /usr/local/mysql
# chown -R root:mysql ./*
(2)创建数据库存放目录
# mkdir /mydata/data -pv
# chown -R mysql.mysql /mydata/data
(3)为mysql提供配置文件
mysql默认读取文件为 /etc/my.cnf //之前安装mariadb时,mariadb-libs提供的
[[email protected] mysql]# mkdir /etc/mysql //创建配置文件目录
[[email protected] mysql]# cp support-files/my-large.cnf /etc/mysql/my.cnf
[[email protected] mysql]# vim /etc/mysql/my.cnf
datadir = /mydata/data
skip_name_resolve = ON
innodb_file_per_table = ON
//必须在[mysqld]下,添加这三行
[[email protected] mysql]# cp support-files/mysql.server /etc/init.d/mysqld //复制启动mysql的文件,并确保其有执行权限
[[email protected] mysql]# chkconfig - -add mysqld //注意是 - -
(4)初始化mysql数据库
初始化原因: 上面的启动会有问题,数据会放在/var/lib/mysql/,而不是/mydata/data下。因为我们创建的配置文件/etc/mysql/my.cnf 会和系统之前的/etc/my.cnf有冲突,需要把/etc/my.cnf存放到别处。
初始化过程:
[[email protected] mysql]# rm /mydata/data/* -f //删除之前产生的错误日志信息等
[[email protected] mysql]# scripts/mysql_install_db - -user=mysql - -datadir=/mydata/data //必须在/usr/local/mysql目录下执行初始化操作
//数据库数据产生
此时在启动mysql,将会发现数据库启动成功 。
附加:查看当前mysql的帮助信息,发现mysql的配置文件读取路径和之前自己理解有出入,需要注意下即可。
至此 ,通用二进制安装mariadb过程结束。个人安装过程中出现的问题,致使mysql一直启动失败总结:
1、修改配置文件时,skip_name_resolve = ON 中把resolve写成reslove
2、[[email protected] mysql]# scripts/mysql_install_db - -user=mysql - -datadir=/mydata/data 只写了一个- 。
问题很低级,不过最终查错,感受很深,以后不会再发生这样的错误,编写任何文件都应该仔细查看及核对。