1.创建目录 /usr/local/
把下载好的mysql文件放到 /usr/local/ 目录下
tar -zxvf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz.tar.gz //解压
mkdir mysql//在/usr/local //目录下建目录mysql
然后把解压好的mysql(名字很长)文件夹拷贝到 /usr/local/mysql 目录下
在根目录的tmp下新建文件 mysql.sock
2.创建或修改配置文件
vi /etc/my.cnf
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
4.添加系统mysql组和mysql用户
groupadd mysql //创建用户组mysql
useradd -r -g mysql mysql //-r参数表示mysql用户是系统用户,不可用于登录系统,创建用户mysql并将其添加到用户组mysql中
chown -R mysql mysql/
chgrp -R mysql mysql/
5.初始化数据库
chown -R mysql:mysql ./ 赋权限
./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data //5.7版本
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data //5.7之前的版本
6.启动数据库
./support-files/mysql.server start
如果启动失败(update PID),按照提示路径,新增提示文件即可
7.登录mysql
./mysql -u root -p
输入密码
第一次会提示需要修改密码:set password=password('123456');
flush privileges;
//如果这里不知道密码,在my.cnf文件里添加一句 skip-grant-tables 这个参数可以在登录时,不需要密码直接登录
设置软连接在自己的目录直接调用进入mysql
ln -s ../../../usr/local/mysql/bin/ ../../../home/sfadmin/loadmysql (loadmysql为连接自动建立的自定义目录)
chmod 644 /etc/my.cnf //设置my.cnf文件权限,不然会被系统忽略该文件导致有些配置项无法生效和使用
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
update mysql.user set password=password('新密码') where User="root" and Host="localhost";
//设置和查询允许被远程访问
select host,user from user;
grant all privileges on *.* to root@'%' identified by "123456";
flush privileges;
如果需要远程访问mysql数据库,需要关闭linux的防火墙:
查看防火墙状态: systemctl status firewalld 或者 systemctl is-active firewalld
启动防火墙: systemctl start firewalld
停止防火墙: systemctl stop firewalld (mysql关闭防火墙之后就可以远程连接)
永久停用: systemctl disable firewalld
启用防火墙: systemctl enable firewalld
Linux安装mysql
于 2018-12-03 11:29:24 首次发布