Linux服务器部署mysql数据库
1. 下载地址
http://dev.mysql.com/downloads/mysql/5.6.html#downloads,
选择。Linux下通用版本 64位 如:mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
2.解压
tar -zxvf mysql压缩文件名 [ -C 指定解压路径 ] 默认解压当前目录
修改文件夹名称,
mv 原文件夹名 修改后文件夹名
3.添加用户组和用户(多个mysql可使用相同的用户组和用户)
(1)添加用户组
groupadd mysql
(2)添加用户
useradd -r -g mysql mysql
4.安装
创建mysql/data/mysql
mysql/data/log
mysql/data/mysql_file 文件夹
(1)将当前的文件夹设置成mysql用户组mysql用户
即:授权当前目录给组用户
chown -R mysql:mysql .
(2)初始化/安装 mysql
①进去解压后的mysql文件夹
②输入下列命令
./scripts/mysql_install_db --user=mysql
用户=mysql
后面可以追加,以作安装细节
--datadir=./data/mysql 数据路径=./data/mysql
默认安装到 usr/local/mysql中
--defaults-file=/etc/my.cnf 指定配置信息文件
默认/etc/my.cnf
必须的配置文件:
/etc/my.cnf 默认的mysql配置文件。在安装时可指定自己的配置文件
vi ./my.cnf 进入编辑页面
按 Esc 后 输入 :wq 保存退出 :q退出
[mysqld]
basedir=/root/bdp/mysql 指定mysql的安装路径
datadir=/root/bdp/mysql/data
port=3307
character-set-server=utf8
server_id=11
#该socket最好指定,不指定的话默认的话 是使用的默认的socket文件 而且登陆数据库的时候会有问题
socket = /tmp/mysql3307.sock
log-error = /root/bdp/mysql/data/log/error.log
pid-file = /root/bdp/mysql/data/mysql-5.7.19-3307.pid
具体安装具体配置
5. 初始化3306端口上的mysql
bin/mysqld --defaults-file=/root/bdp/mysql/mysql_file/my.cnf --initialize --user=mysql
6. 生成密钥(暂时不用)
bin/mysql_ssl_rsa_setup --defaults-file=/root/bdp/mysql/mysql_file/my.cnf 指向自己的my.cnf
7. 测试
service mysqld start
./bin/mysql -uroot 进入mysql页面
service mysqld status
service mysqld stop
8. 修改密码
SET PASSWORD = PASSWORD('root');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges; 刷新生效 之前必须设置好密码,否则不能访问mysql库,还需要其他操作
9. 允许远程登录
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
10. 可能会出现的问题
MySql提示:The server quit without updating PID file(…)失败
1.可能是/root/bdp/mysql/data/rekfan.pid文件没有写的权限
解决方法 :给予权限,执行 “chown -R mysql:mysql ./” “chmod -R 755 /root/bdp/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 = /root/bdp/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后存盘退出重启机器试试。
11.mysql卸载
(1)查找以前是否装有mysql:
rpm -qa|grep -i mysql
有的话删除:rpm -e 包名
(2)删除老版本mysql的开发头文件和库
find / -name mysql
rm -rf 文件或文件夹名
(3)卸载后/etc/my.cnf不会删除,需要进行手工删除