[mysql]linux安装mysql5.7

Posted 程序与网络

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[mysql]linux安装mysql5.7相关的知识,希望对你有一定的参考价值。





环境

Linux CentOS7.0mysqlmysql5.7安装方式 tar.gz二进制安装包


配置mysql

1. 将mysql安装包down下来

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

2. 解压并移动

tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 
mv mysql-5.7.26-linux-glibc2.12-x86_64 /xinyuan/mysql_m

3. 创建用户

gourpadd mysql
useradd -r -g mysql mysql

4. 创建mysql数据目录(本文将数据目录放入mysql路径中),并给数据目录赋予权限

cd  /xinyuan/mysql_m
mkdir -p data
mkdir -p tmp

5. 赋予权限

这块必须给文件赋权限,因为msyql需要这几个目录读写文件

sudo chown mysql:mysql -R /xinyuan/mysql_m/data/
sudo chown mysql:mysql -R /xinyuan/mysql_m/tmp/

6. 配置配置文件

一般mysql的默认配置文件都在/etc/my.cnf。本文将my.cnf放入mysql路径中

vim /xinyuan/mysql_m/my.cnf

配置文件内容

[mysqld]
# bind-address=127.0.0.1 # mysql的监听地址,如果想要远程访问,就把这行注释掉
server-id = 1 # # 表示是本机的序号为1,一般来讲就是master的意思
port=3306 # 端口号
user=mysql # mysql以什么用户运行
basedir=/xinyuan/mysql_m # MySQL 的安装路径
datadir=/xinyuan/mysql_m/data # MySQL 数据文件的存储位置,也是数据表的存放位置
socket=/xinyuan/mysql_m/tmp/mysql.sock # mysql以socket方式运行的sock文件位置
log-error=/xinyuan/mysql_m/data/mysql.err # 错误日志位置
pid-file=/xinyuan/mysql_m/data/mysql.pid # 进程id文件
#character config
character_set_server=utf8mb4 # 服务器使用的字符集
symbolic-links=0 # 是否支持符号链接,即数据库或表可以存储在my.cnf中指定datadir之外的分区或目录,为0不开启
tmpdir=/xinyuan/mysql_m/tmp # #mysql默认配置得缓存目录 默认是/tmp


[mysql]
socket=/xinyuan/mysql_m/tmp/mysql.sock

7. 初始化mysql

这块指定默认加载的mysql配置文件

cd /xinyuan/mysql_m/bin
./mysqld --defaults-file=/xinyuan/mysql_m/my.cnf --user=mysql --initialize

8. 启动mysqld

./mysqld  --defaults-file=/xinyuan/mysql_m/my.cnf   --user=mysql

配置shell脚本启动

#!/bin/bash
d=`date "+%y-%m/%d %H:%M:%S"`
echo "$1 $d"

if [ $1 = "start" ]; then
echo "$d mysql start "
nohup /xinyuan/mysql_m/bin/mysqld --defaults-file=/xinyuan/mysql_m/my.cnf --user=mysql >> mysql_m.log 2>&1 &

elif [ $1 = "stop" ]; then
echo "$d mysql stop"
# 方法一:利用mysqladmin,但是这种方法需要用户名和输入密码
# /xinyuan/mysql_m/bin/mysqladmin shutdown -proot
# 方法二:直接关闭进程kill -9 [mysql的进程号]
mysql_m=`ps -ef|grep mysql_m |grep -v 'grep\|stop' | awk '{print $2}' `
kill -15 $mysql_m
else
echo "输入错误,请检查重新输入"
fi

登录密码

第一次初始化mysql之后密码是默认的。默认密码通过 data/mysql.err查看

修改默认密码

切换到bin目录然后运行(由于我们sock文件制定到mysql目录下的tmp下,所以我们需要加上-S参数指定连接sock)

./mysql -uroot -p -S ../tmp/mysql.sock

输入密码,然后进入mysql控制台,然后更改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

远程链接配置

将root设置为任何ip都能拿他登录

use mysql;
update user set host = '%' where user = 'root';

然后重启mysql即刻远程链接

参考链接 https://bbs.csdn.net/topics/390700785?list=6779163

                                    

以上是关于[mysql]linux安装mysql5.7的主要内容,如果未能解决你的问题,请参考以下文章

Linux安装MySQL5.7----彻底卸载MySQL

linux下安装mysql5.7.17及简单配置

linux下安装mysql5.7方法与常见问题

Linux下安装mysql5.7

linux7 yum安装Mysql5.7

Linux安装MySQL5.7