写在前面的屁话
研究了两天官方文档装MySQL,分享一下。
安装MySQL一共有三种方式,但我肯定不会全部照抄讲完啦。yum安装灵活性太差,淘汰;二进制包安装和源码安装,最后选择了二进制包安装,因为稳健,源码跟它的区别就是,源码要编译一道,后面的操作完全一样。
视频在最后
步骤1:
进入官网下载二进制包,我下载的是5.7版本。需要注意的是系统要选择Linux - Generic,名字里带有glibc的就是二进制包。
步骤2:
需要安装libaio,文档里说的这是必备的,我发现CentOS 7自己就有这个
步骤3:
假设二进制包已经下载到了/usr/local下,下面分别创建组、用户,修改所有者,初始化。
groupadd mysql
#-r系统用户,-s /bin/false mysql表示禁止登陆,相较/bin/nologin而言,尝试登陆时它没有返回的消息
useradd -r -g mysql -s /bin/false mysql
cd /usr/local
#千万别把/Path/to/mysql-VERSION-OS硬生生敲下来……
tar zxvf /Path/to/mysql-VERSION-OS.tar.gz
#创建软连接,方便管理
ln -s full-path-to-mysql-VERSION-OS mysql
cd mysql
#使用 data 存储数据
mkdir data
chown mysql:mysql data
chmod 750 data
#这一步会生成一个临时密码,记下来
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
步骤4:
系统并没有创建my.cnf文件,我们要自己创建
vim /etc/my.cnf
输入
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
步骤5:
启动(以CentOS 6的方式,CentOS 7兼容此方式)
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld restart
步骤6:
添加环境变量
在/etc/profile末尾添加
PATH=$PATH:/usr/local/mysql/bin
重新加载一下
source /etc/profile
劝君莫用export PATH=$PATH:/usr/local/mysql/bin,重启就没有了哦
步骤7:
改密码
mysqladmin -uroot -p'临时密码' password '新密码'
如果提示密码过期,则用以下命令
bin/mysql_secure_installation
根据提示输入密码
还有一个加密的可选步骤。为毛可选呢,因为加密会导致数据库性能下降,貌似下降30%,所以仁者见仁智者见智,加密的操作为
/usr/local/mysql/bin/mysql_ssl_rsa_setup