今天花了一天的时间给Linux系统装MySQL,中途遇到了不少问题,导致重新开始了好几次,特此总结,以便复查。
首先说明一下环境,用的是VMware虚拟机搭载CentOS6.5的Linux系统,并用CRT远程控制,所用MySQL版本为mysql-5.7.23。
Linux系统所用的MySQL的下载在这里就不赘述了,重点是安装与配置。
在安装之前有必要先提一下,需要先在Linux上安装一些必要的依赖,对于mysql的依赖安装使用以下命令即可:
yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6
yum update libstdc++-4.4.7-4.el6.x86_64
下载好的mysql压缩包如下:
首先将下载好的mysql压缩包上传到linux,在CRT中使用快捷键Alt+P弹出上传窗口,将下载好的压缩包拖到该窗口,上传到家目录下(/root):
在该目录下执行解压缩命令,解压到指定目录/usr/local下,并重命名为mysql,使用命令为
tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz -C /usr/local (其中 ‘ -C ’ 是解压到指定目录)
mv mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz mysql
在mysql目录下创建database 目录 、data 目录 、data/binlog 二进制日志目录 、 data/relay 主从复制的本地文件存放目录 、 data/tmp临时数据存放目录 , 并权限设置为0755:
然后创建 mysql 用户组和 mysql 用户 , 把 mysql 目录所有者赋给 mysql 用户,(我这里显示已经存在,无所谓,不管有没有都执行一下),然后进入mysql目录:
然后初始化mysql数据库,使用命令如下:
初始化完成后会显示日志信息,最后一行会显示一个随机生成的初始密码,如果没有任何日志信息,可用cat命令查看data文件夹下的error.log文件,即 cat data/error.log,内容如下:
可以看到随机生成的密码。
接下来为mysql的启动做一些服务性的准备,首先创建启动服务:
至于这为什么叫创建启动服务,还有待我去研究(滑稽)。
然后配置环境变量,编辑/etc/profile文件:
加入如下三行后保存退出:
重新加载配置文件:
然后配置一个mysql的启动配置文件my.cnf,那么它在哪呢?别着急,在/etc目录下新建一个my.cnf就好了,里边的东西自己写,对,就是自己写。主要配置有如下几个:详细配置见本文末尾附录。
现在万事俱备,准备启动mysql服务了,使用service mysql start 命令即可启动服务,emmmm,问题出现了,启动失败了,报了个错:
原来是已经有mysql服务进程存在了,那就把已经存在的杀掉吧,使用 ps -ef | grep mysql 把这些进程信息揪出来,然后kill -9 PID 杀死进程,再执行服务启动指令,就没有问题啦,成功启动后显示如下: