Linux下安装MySQL 5.7
安装MySQL 5.7
1、通过命令下载
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
2、解压
tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysql/
3、简化
cd /usr/local
mv mysql-5.7.36-linux-glibc2.12-x86_64 mysql
4、创建数据目录并赋权
mkdir mysql/data
chmod -R 777 /usr/local/mysql/data
5、创建用户、组并加入
groupadd mysql
useradd -g mysql mysql
6、新建MySQL配置文件
vim /etc/my.cnf
7、加入如下配置
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/data/mysql.err
pid-file=/usr/local/mysql/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
8、进入bin目录初始化
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data/ --basedir=/usr/local/mysql/
- 可能会报错:./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory ,是因为没有安装依赖 libaio,运行如下命令安装依赖
yum -y install libaio-devel.x86_64 yum -y install numactl
9、查看MySQL密码
cat /usr/local/mysql/data/mysql.err
10、添加软连接
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
11、启动MySQL
service mysql start
12、登录mysql
./mysql -h localhost -u root -p
13、修改密码
set password=password('rootxjhy');
flush privileges;
14、修改访问权限
use mysql;
update user set Host='%' where User='root';
flush privileges;
15、远程Navicat连接
- 可能报错:2003 - Can't connect to MySQL server on 'xxx' (10060 "Unknown error")
- 服务器端口可能未开放,开放端口
firewall-cmd --query-port=3306/tcp
- 返回no说明未开放,开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
- 重启防火墙生效配置
firewall-cmd --reload
- 查看验证,返回yes端口开放成功
firewall-cmd --query-port=3306/tcp
- 若服务器端口开放了还不能连接访问,则是服务器厂商对应的安全组限制了
腾讯云服务器端口怎么开放?端口开通教程
腾讯云服务器端口怎么开放?端口开通教程 - 腾讯云开发者社区-腾讯云
阿里云添加安全组规则
添加安全组规则_云服务器 ECS-阿里云帮助中心
安装完成
创建用户及用户权限配置
1、创建一个MySQL用户
CREATE USER 'xjhy'@'%' IDENTIFIED BY 'xjhy';
2、查看创建的MySQL用户
SELECT host,user FROM mysql.user WHERE user='xjhy';
3、给创建成功的MySQL用户赋权
以下是一些MySQL用户常用的权限:
ALL: 所有可用的权限
CREATE: 创建库、表和索引
LOCK_TABLES: 锁定表
ALTER: 修改表
DELETE: 删除表
INSERT: 插入表或列
SELECT: 检索表或列的数据
CREATE_VIEW: 创建视图
SHOW_DATABASES: 列出数据库
DROP: 删除库、表和视图
一般都是给到业务数据库权限,不要给删除库、表和视图的权限,核心库mysql数据库的权限也不要给,根据自己的需求来。root用户赋予所有权限使用如下命令:
GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ WITH GRANT OPTION;
flush privileges;
我只给了业务库(zhy)除删除库、表和视图的其它权限,核心库(information_schema、performance_schema、mysql)的查看权限。
GRANT PROCESS ON *.* TO 'xjhy'@'%';
GRANT SELECT ON `information_schema`.* TO 'xjhy'@'%';
GRANT SELECT ON `performance_schema`.* TO 'xjhy'@'%';
GRANT SELECT ON `mysql`.* TO 'xjhy'@'%';
GRANT CREATE,ALTER,INSERT,SELECT,DELETE,UPDATE,INDEX ON `zhy`.* TO 'xjhy'@'%';
flush privileges;
使用远程连接Navicat工具等可能会报错:1227 - Access denied; you need (at least one of) the PROCESs privilege(s) for this operation
这是因为PROCESS权限是用来查看谁连接数据的一个权限,除了root用户,都只能看到自己的。使用如下命令赋权解决
GRANT PROCESS ON *.* TO 'xjhy'@'%';
flush privileges;
至此赋权完成
Linux下安装MySQL 5.7相关推荐
- Linux下安装mysql(2) 及常见问题解决(CentOS)
Linux下安装mysql(2) 及常见问题解决(CentOS) 参考文章: (1)Linux下安装mysql(2) 及常见问题解决(CentOS) (2)https://www.cnblogs.co ...
- linux下安装mysql的方式_linux下安装mysql的两种方式
linux下安装mysql的两种方式 1 源码安装 1 创建mysql用户: useradd mysql passwd mysql 2 解压缩下载的mysql包: tar -zxvf mysql-5. ...
- 【已解决】Linux下安装MySQL数据库
[经验贴]安装环境为:Ubuntu12.04,MySQL5.5.28 在Linux下安装MySQL有三种方式:第一种以rpm的二进制文件分个安装,第二种是自己编译源码后安装,最后一种是以二进制tar. ...
- 大数据互联网架构阶段 Linux下安装mysql启动的常见问题
Linux下安装mysql启动的常见问题 1.PID file could not be found mysql无法启动ERROR! MySQL is running but PID file cou ...
- mysql安装设置数据目录下,linux下安装mysql数据+配置
<linux下安装mysql数据+配置>由会员分享,可在线阅读,更多相关<linux下安装mysql数据+配置(2页珍藏版)>请在人人文库网上搜索. 1.Redhat下安装My ...
- linux按照mysql为何如此简单_手把手教你在Linux下安装MySQL
在Linux操作系统下,安装MYSQL有两种方式:一种tar安装方式,另外一种是rpm安装方式.这两种安装方式有什么区别呢?尽管我们在Linux下常用tar来压缩/解压缩文件,但MYSQL的tar格式 ...
- freebsd php mysql_在freebsd和linux下安装mysql+php+apache2
顺利学会了在freebsd和linux下安装MySQL+php+apache2. 版本:mysql:4.0.26 apache: 2.0.59 php:4.4.2 freebsd: --MySQL p ...
- Linux下安装mysql后无法启动的解决方法
在Linux下安装完mysql后,mysql服务无法启动,总是failer. 这个不是因为mysql安装失败,而是因为启动了SELinux. 进入/etc/selinux/co ...
- linux下安装mysql问题:mysqld_safe mysqld from pid file /usr/local/mysql/data/mysql.pid ended
原文链接 : linux下安装mysql问题总结(一)mysqld_safe mysqld from pid file /usr/local/mysql/data/mysql.pid ended li ...
- linux下安装mysql数据库[yum install版]
原文链接:linux下安装mysql数据库[yum install版] 在CentOS7中默认安装有MariaDB,这个是MySQL的分支,yum直接覆原有MariaDB, 或安装包报错无法解决依赖问 ...
最新文章
- 什么时候会执行viewDidLoad方法
- asp.net 操作Excel大全
- 如何生成唯一的Android设备ID?
- 【图像去噪】基于butterworth滤波器、中值、维纳、小波算法实现图像去噪含GUI
- 【渝粤教育】广东开放大学 电算化会计 形成性考核 (44)
- Codeforces Round #362 (Div. 2) E. PLEASE(数论 + 递推)
- php ajax 上传进度条,jQuery+php+ajax带进度条无刷新上传文件代码
- Flutter Missing parentheses in call to ‘print‘. Did you mean print(‘Insert‘, text,‘to line‘, line_nu
- 毕业设计 - 题目:基于机器视觉的图像矫正 (以车牌识别为例) - 图像畸变校正
- docker run --privileged参数(容器权限全开,不利于宿主机安全,宿主机容易重启)(与/usr/sbin/init共用)
- 《烈火军校》主题曲插曲
- 软件模拟SPI接口程序代码(4种模式)
- android 全局菜单键,视听效果都很出色的超值之选 OPPO智能电视K9评测
- 摄像头常用接口MIPI,DVP原理图接口定义
- ABAQUS模拟裂纹扩展方法——Debond
- Word文件如何删除文字出现红色波浪线?
- Vue ajax 同步请求
- 关于开展阿里巴巴农村淘宝本地生活O2O商家招募活动的通知
- 如何在蒲公英免费分发托管自己的应用?
- 计算机网络switch配置,switch二层etherchannel的配置案例及 PAGP,LACP