Linux下安装二进制版mysql-8.0.15
1、添加用户
## 添加用户组
groupadd mysql
## 添加用户,指定用户home目录
useradd -g mysql mysql -d /data/mysql
## 解压下载的mysql二进制包
tar -xvf mysql-8.0.15-linux-glibc2.12-x86_64.tar.xz -C /data/mysql
## 如果需要修改目录名称,mv修改目录名称,不多说明
## 因/data目录有比较大的磁盘空间,防止后期数据量太大,导致磁盘空间不够,将mysql的包及相关配置放在/data下
## 在/data/mysql的目录下创建mysql-8.0.15目录,将解压的文件都放在了此处,然后将此路径建立软连接到/usr/local/mysql下
ln -s /data/mysql/mysql-8.0.15 /usr/local/mysql
2、配置参数文件:
vim /etc/my.cnf
修改为以下内容,然后保存即可
[mysqld]
server-id=1
port=3306
mysqlx_port=22060
mysqlx_socket=/data/mysql/mysql-8.0.15/tmp/mysqlx.sock
basedir=/data/mysql/mysql-8.0.15
datadir=/data/mysql/mysql-8.0.15/data
socket=/data/mysql/mysql-8.0.15/tmp/mysql.sock
pid-file=/data/mysql/mysql-8.0.15/tmp/mysqld.pid
log-error=/data/mysql/mysql-8.0.15/tmp/log/error.log
# slow-query-log=1
# slow-query-log-file=slow.log
# long_query_time=0.2
# log-bin=bin.log
# relay-log=relay.log
# binlog_format=ROW
# relay_log_recovery=1
character-set-client-handshake=FALSE
character-set-server=utf8
collation-server=utf8_general_ci
init_connect='SET NAMES utf8'
# innodb_buffer_pool_size=1G
join_buffer_size=128M
sort_buffer_size=2M
read_rnd_buffer_size=2M
log_timestamps=SYSTEM
lower_case_table_names=1
default-authentication-plugin=mysql_native_password
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
3、创建目录授权等:
cd /data/mysql/mysql-8.0.15
## 在mysql下创建运行缓存目录及数据存储目录
mkdir tmp data
## 存放日志
mkdir tmp/log
## 修改所属组和用户为mysql:mysql
chown -R mysql:mysql /data/mysql/mysql8.0.15
## 可有可无,如果权限不够,加上
chmod -R 775 /data/mysql/mysql-8.0.15
## 软连接/usr/local/mysql执行相同的权限命名
chown -R mysql:mysql /usr/local/mysql
4、初始化数据库:
#/usr/local/mysql/bin/mysqld --user=mysql --basedir=/data/mysql/mysql-8.0.15 --datadir=/data/mysql/mysql-8.0.15/data --initialize-insecure
官方推荐使用--initialize,会在错误日志中生成难以输入的临时密码,我这里使用的免密码的方式。
##如果使用--initialize,用下一步查询生成的密码,如果用的--initialize-insecure root密码就是空的
cat /data/mysql/mysql-8.0.15/tmp/log/error.log | grep -i password
2018-07-29T02:06:41.253856+08:00 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: wquR3-Kxlg1d
5、设置启动文件和环境变量:
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
--启动数据库:
# /etc/init.d/mysql start
或 service mysql start

添加环境变量(或可以直接写到/etc/profile下)
vim /etc/profile.d/mysql.sh
输入
export PATH=$PATH:/usr/local/mysql/bin
## 加载环境变量
source /etc/profile.d/mysql.sh
## 查看mysql版本
mysqld --version

## 登录mysql
此时需注意,如果不加 -S指定mysql.sock的路径,可能会报错,因为mysql默认会去找/tmp/mysql.sock,因为在配置文件中配置了其他路径,所以在连接的时候找不到对应的mysql.sock需手动指定一下,目前没有解决这个默认路径问题

mysql -udfs -p -S /data/mysql/mysql-8.0.15/tmp/mysql.sock
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 8.0.12 MySQL Community Server - GPL
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> select version();
+-----------+
| version() |
+-----------+
| 8.0.12 |
+-----------+
1 row in set (0.00 sec)

7.设置可以远程登录的账号:
mysql> show variables like '%valid%pass%';
Empty set (0.00 sec)
mysql> create user root@'%' identified by 'oracle';
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> show variables like '%valid%pass%';
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
## 因为默认有一个root帐号,所以上面创建root会报错,只需修改其密码和权限即可
mysql> alter user root@'localhost' identified by 'oracle';
--创建可以远程登录的用户:
mysql> create user root@'%' identified by 'oracle';
Query OK, 0 rows affected (0.06 sec)
mysql> grant all privileges on *.* to root@'%' with grant option;
Query OK, 0 rows affected (0.07 sec)
mysql> grant all privileges on *.* to root@'localhost' with grant option;
Query OK, 0 rows affected (0.07 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
注意:
上面创建mysql用户后,在远程连接mysql时可能会出出验证问题,在mysql8版本中可能是验证方式有所改变,如果报如下图中的错误,执行后面给出的命令即可

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'oracle';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'oracle';
flush privileges;
Linux下安装二进制版mysql-8.0.15的更多相关文章
- Linux下安装配置与使用MySQL数据库
Linux下安装配置与使用MySQL数据库 在Linux下安装做开发时往往少不了要使用到MySQL数据库,下面就Linux系统为例讲解一下,如何安装MySQL数据库,如何启用/停.止MySQL服务,如 ...
- linux下安装rpm格式的mysql
1.下载安装包官网下载.rpm格式安装包,需要下面两个文件: MySQL-server-5.0.26-0.i386.rpm MySQL-client-5.0.26-0.i386.rpm 注:官网下载时 ...
- linux下安装jdk+tomcat+eclipse+mysql
我的环境:主机是win7的,虚拟机是VWare Workstation 6.0 ,linux系统为Red Hat Enterprise Linux 5 64位 各软件版本:jdk是jdk-6u ...
- linux 下 安装 rpm 格式 的 mysql
在Linux操作系统下,安装MYSQL有两种方式: 一种tar安装方式, 另外一种是rpm安装方式. 这两种安装方式有什么区别呢?尽管我们在Linux下常用tar来压缩/解压缩文件,但MYSQL的ta ...
- Linux下安装启动多个Mysql
网上找了N多资料,没有一个可以顺利成功的,郁闷,可能是水平有限吧...!本人经过不断的研究.测试,完整实现Linux下启动两台MySQL,而且对mysql有了更深入的了解...废话不多说,走着! 步骤 ...
- 安装Linux的步骤 包含linux下安装jdk,及mysql
https://mirrors.tuna.tsinghua.edu.cn/centos/7.9.2009/isos/x86_64/ 镜像下载网址,4G 左右. 安装VMware 15版本 一路下一步, ...
- Linux下安装LAMP(Apache+PHP+MySql)和禅道
1.更新yum源: yum update -y 2.安装Apache+PHP+MySql yum install httpd mysql-devel mysql-server mysql-php ph ...
- Linux下安装使用MySQL
网上找那些安装教程比较多的版本,版本只要不是太旧就行. 下载mysql 5.6.28 通用版64位二进制版,二进制版相当于windows的安装包,可以直接安装,如果是源码版,还需要编译后再进行安装. ...
- 在Linux下安装和使用MySQL
[简 介] 想使用Linux已经很长时间了,由于没有硬性任务一直也没有系统学习,近日由于工作需要必须使用Linux下的MySQL.本以为有Windows下使用SQL Server的经验,觉得在Linu ...
随机推荐
- 我如何添加一个空目录到Git仓库?
新建了一个仓库,只是创建一些目录结构,还不里面放什么,要放的内容还没有,还不存在,应该怎么办呢? Git 是不跟踪空目录的,所以需要跟踪那么就需要添加文件! 也就是说 Git 中不存在真正意义上的空目 ...
- Android Studio/IntelliJ IDEA使用手记
使用第三方jar包 1.将jar包放入项目里的libs文件夹中: 2.在project选中该jar包,点击右键选择:"Add as library": 1. 代码中中文显示乱码 ...
- javascript的slice(),splice(),split(),substring(),substr()
例子摘抄于http://www.w3school.com.cn/jsref/jsref_obj_array.asp 1.slice(): Array和String对象都有 在Array中 slice ...
- URL Handle in Swift (一) -- URL 分解
更新时间: 2018-6-6 在程序开发过程之中, 我们总是希望模块化处理某一类相似的事情. 在 ezbuy 开发中, 我接触到了对于 URL 处理的优秀的代码, 学习.改进.记录下来.希望对你有所帮 ...
- 一文了解@Conditional注解说明和使用
@Conditional:Spring4.0 介绍了一个新的注解@Conditional,它的逻辑语义可以作为"If-then-else-"来对bean的注册起作用. @Con ...
- Layout布局位置
- - GUILayout 这个本身就是用于自动布局的. 不用给定位置的,这也是它与GUI的区别所在.通常默认开始的位置是屏幕的左上角. 当然你也可以限定开始自动布局的位置.用 GUILayout.B ...
- 设置Eclipse中properties文件打开方式myeclipse一样有source和properties两个视图方法
东北大亨: 说明:如果想在eclipse的properties文件打开的方式出现source和properties视图就需要添加JBossTools插件 下面介绍如果添加插件: 1.打开官网 http ...
- iOS:苹果企业证书通过网页分发安装app
本文转载至 http://blog.sina.com.cn/s/blog_6afb7d800101fa16.html 苹果的企业级证书发布的应用,是不用设备授权即可直接安装,并且不限设备上限.为了方便 ...
- c++中的基本知识点
1 class和struct的区别和联系 在c++中,class和struct只有一点不同,它们是可以完全替代使用的.唯一的不同在于,class中的成员默认是private的,而struct中默认是p ...
- k-anonymity
k匿名(k-anonymity)是一种常用的社交网络隐私保护技术,其思想是通过人为构造一定数量与目标节点拓扑结构相同的节点来降低用户被定位的概率 [匿名]英语怎么说_在线翻译_有道词典 http:// ...