Linux 安装 MySQL
Updated:
- 1. 1. 去MySQL官网上下载安装包,选择社区版MySQL Community Server,Linux-Generic,(mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz)[https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz]
- 2. 2. 解压
- 3. 3. 复制解压后的文件到本地软件目录
- 4. 4. 添加系统mysql组和mysql用户
- 5. 5. 创建数据存储目录
- 6. 6. 安装MySQL
- 7. 7. 添加到开机启动
- 8. 8. 启动MySQL
- 9. 9. 启动错误列表
- 10. 1. 关闭MySQL服务,跳过权限认证启动
- 11. 8. 备份
1. 去MySQL官网上下载安装包,选择社区版MySQL Community Server,Linux-Generic,(mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz)[https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz]
2. 解压
|
|
3. 复制解压后的文件到本地软件目录
|
|
4. 添加系统mysql组和mysql用户
|
|
5. 创建数据存储目录
|
|
6. 安装MySQL
|
|
7. 添加到开机启动
|
|
8. 启动MySQL
|
|
9. 启动错误列表
Starting MySQL.2017-09-28T02:25:22.928763Z mysqld_safe Directory ‘/var/lib/mysql’ for UNIX socket file don’t exists.
ERROR! The server quit without updating PID file (/var/lib/mysql/bogon.pid).
MySQL启动的时候,会先去找 /etc/my.cnf 中的配置,然后去找 /etc/init.d/mysql 中的配置。
修改my.cnf
vim /etc/my.cnf
把 datadir=/var/lib/mysql 改为 datadir=/usr/local/mysql/data
注释掉 #socket=/var/lib/mysql/mysql.sock
再次启动就OK了。
如果要修改日志的目录,
[mysqld_safe]
log-error=/var/log/mysql/mysql.log
同时还需要授予MySQL权限。 chown -R mysql:mysql /var/log/mysql
针对出现的ERROR! The server quit without updating PID file (/var/lib/mysql/bogon.pid).错误。
谷歌给出的答案可以用:
1、可能是/usr/local/mysql/data/mysql.pid文件没有写的权限
解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data” 然后重新启动mysqld!
2、可能进程里已经存在mysql进程
解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!
3、可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。本人就是使用第三条方法解决的 !
4、mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。
解决方法:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data
5、skip-federated字段问题
解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。
6、错误日志目录不存在
解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限
7、selinux惹的祸,如果是centos系统,默认会开启selinux
解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。
但是启动成功后,不知道MySQL的root用户密码,无法登录。
1. 关闭MySQL服务,跳过权限认证启动
cd /usr/local/mysql/bin
./mysqld_safe –skip-grant-tables
另开一个shell窗口。
切换到bin目录下,直接输入mysql ,就可以出现 > 登陆成功
连接权限数据库: use mysql;
改密码:update user set authentication_string=password(‘root’) where user=’root’ ;
刷新权限(必须步骤):flush privileges;
退出 quit;
修改密码成功。
8. 备份
./mysqldump –all-databases -uroot -p > /home/dump.sql
输入root用户密码即可,备份完成。