前言:
很久没安装数据库服务器了,记得上次 MySQL 安装配置的时候,系统还是 Cenots 6.5 ,现在 Centos 系统版本更新太快,都跟不上步伐了,刚好最近公司需要几台 Mariadb Server 刚好练练手。
由于每家公司的数据库服务器 版本不同,但我依然推荐大家使用 Mariadb 数据库,至少目前该社区及产品非常稳定,至于有什么新功能,建议去其官方了解更多特性。
查看系统版本命令
$ cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) x64
1.安装 MariaDB(MySQL)
下载MariaDB二进制安装包:
//downloads.mariadb.org解压并安装 Mariadb-devel 静态库:
$ yum install mariadb-devel numactl -y $ mkdir /renwole $ cd /renwole $ tar zxvf mariadb-10.2.8-linux-glibc_214-x86_64.tar.gz移动目录并创建软连接:
$ mv mariadb-10.2.8-linux-glibc_214-x86_64 /usr/local $ cd /usr/local $ ln -s mariadb-10.2.8-linux-glibc_214-x86_64 mysql创建 MariaDB(MySQL)用户和组
$ groupadd mysql $ useradd -g mysql mysql赋予 MariaDB(MySQL)目录权限:
$ cd /usr/local/mysql $ chown -R root . $ chown -R mysql data
2.配置 MariaDB(MySQL)
删除自带的 my.cnf 配置文件,并创建新的配置文件:
$ rm -rf /etc/my.cnf $ cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnf注:/usr/local/mysql/support-files下有5个配置文件,请根据服务器的内存大小选择配置文件(你也可以自定义优化my.cnf配置文件,如果你之前有,只要是同版本就可以正常使用,从而无须再次创建,MariaDB(MySQL)启动的时候会自动到/etc下寻找my.cnf文件)。
文件分别是:
my-small.ini (内存 <= 64M) my-medium.ini (内存 128M ) my-large.ini (内存 512M) my-huge.ini (内存 1G-2G) my-innodb-heavy-4G.ini (内存 4GB)在my.cnf文件的 mysqld 字段加入数据库路径:
$ vim /etc/my.cnf datadir = /usr/local/mysql/data注意:这个路径就是初始化数据库用的,将来你的数据库都存在这个目录,这个存储路径是可以更改到其他路径的,以免将来系统宕机带来不必要的损失,所以请根据自己的需求更换相对的路径,别忘记给权限就行。
3.初始化数据库
$ cd /usr/local/mysql/scripts $ ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
4.设置启动脚本
$ cd /usr/local/mysql/support-files $ cp mysql.server /etc/init.d/mysql $ chmod +x /etc/init.d/mysql $ systemctl enable mysql
4.设置变量
添加系统变量,例如直接输入:mysql -uroot -p 会提示无此命令:
$ vim /etc/profile在文件末端添加以下内容:
PATH=$PATH:/usr/local/mysql/bin export PATH使变量立即生效并启动Mysql数据库:
$ source /etc/profile $ systemctl restart mysql $ ss -antp
5.初始化MariaDB(MySQL)安全账户
$ /usr/local/mysql/bin/mysql_secure_installation注意:回车提示你输入MariaDB(MySQL)密码,新安装的mysql密码默认为空,所以直接回车,然后输入Y设置MySQL密码,输入两次回车即可,接下来全部按Y即可(大致意思是删除test数据库、匿名账号、最后Y配置生效。
至此安装完毕,如果你是按照该教程一步一步部署的,那你一定能成功,如果没成功,可以留言,我可以无偿协助。