ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

centos7, centos8 安装mysql5.7

2021-02-24 23:35:56  阅读:238  来源: 互联网

标签:feng dbAdmin log -- mysql5.7 centos7 mysqld mysql centos8


1. 下载mysql软件包

  我们可以先去官网查看我们应该下载哪个版本

  网址: https://downloads.mysql.com/archives/community/

  然后到镜像网站去下载,速度会快很多,例如,清华大学镜像网站,下载5.7版本的软件包:

  wget https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-5.7.33-el7-x86_64.tar.gz      

2. 解压

  

cd /feng
tar -zxvf mysql-5.7.33-el7-x86_64.tar.gz

# 解压目录过长,可以建个软链接,或者改名字
ln -s mysql-5.7.33-el7-x86_64 ./mysql

 

3. 配置

  出于安全考虑,应该避免用root用户启动mysql,所以要创建一个mysql的启动用户

groupadd dbAdmin
## -r 代表建立一个系统用户,不会创建家目录,-g 指定用户组
## 建议使用man 命令查看 命令详情
useradd -r -g dbAdmin dbAdmin

  

  创建mysql 数据目录,赋予dbAdmin 用户权限

mkdir -p /feng/data/mysql
chown -R dbAdmin:dbAdmin /feng/data/mysql

  

  第二步 解压的安装包,也要赋予权限

  

 

 

   编写配置文件: vi /etc/my.cnf

[mysqld]
bind-address=0.0.0.0
port=3306
user=dbAdmin
basedir=/feng/mysql
datadir=/feng/data/mysql
socket=/feng/mysql/mysql.sock
pid-file=/feng/mysql/mysqld.pid
log-error=/var/log/mysqld.log
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true


[client]
port=3306
socket=/feng/mysql/mysql.sock

  创建上述配置中的文件, 授予dbAdmin 权限

touch /feng/mysql/mysql.sock
touch /feng/mysql/mysqld.pid
touch /var/log/mysqld.log

  

4. 初始化

cd /feng/mysql/bin
./mysqld --defaults-file=/etc/my.cnf --basedir=/feng/mysql/ --datadir=/feng/data/mysql --user=dbAdmin --initialize

  初始化成功后,会有初始密码在日志文件里

cat /var/log/mysqld.log |grep "password"
2021-02-21T02:07:12.865619Z 1 [Note] A temporary password is generated for root@localhost: jrwb>b?AX18l

 

5. 启动

bin/mysqld_safe --defaults-file=/etc/my.cnf --user=dbAdmin &

 

6. 客户端连接

bin/mysql -u root -p

  遇到以下报错及解决方法:

  

 

 

 

  登录成功后。修改密码:

  

 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpasswd');

 

7 其他

  

Failed to restart mysqld.service: Unit mysqld.service not found.
[root@localhost mysql]# service mysqld restart
Redirecting to /bin/systemctl restart mysqld.service
Failed to restart mysqld.service: Unit mysqld.service not found.

[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql

 

 使用DataGrip 连接时报错如下,说明mysql 没有允许其他客户端连接,只能localhost连接

 [HY000][1130] null,  message from server: "Host '192.168.31.62' is not allowed to connect to this MySQL server".

  

 

 解决如下:

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

 

标签:feng,dbAdmin,log,--,mysql5.7,centos7,mysqld,mysql,centos8
来源: https://www.cnblogs.com/fhb2011/p/14444436.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有