- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章MySql 8.0.11安装配置教程由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
官网地址:https://dev.mysql.com/downloads/mysql/ 。
我这里是RHEL6.5的系统,因此选择RedHat 6 x86,64bit操作系统---下载第一个RPM Bundle即可--mysql-8.0.11-1.el6.x86_64.rpm-bundle.tar.
目前MySQL8.0.11社区版提供了多种多样的安装方式,但是并未发现针对Linux Generic安装包包含的mysql_secure_installation的安装说明.
因此这里使用推荐的RPM安装:
1、mysql-8.0.11-1.el6.x86_64.rpm-bundle.tar解压后有如下7个文件:
1
2
3
4
5
6
7
|
-rw-r
--r-- 1 root root 28987588 Apr 9 01:06 mysql-community-client-8.0.11-1.el6.x86_64.rpm
-rw-r
--r-- 1 root root 672184 Apr 9 01:06 mysql-community-common-8.0.11-1.el6.x86_64.rpm
-rw-r
--r-- 1 root root 4443296 Apr 9 01:06 mysql-community-devel-8.0.11-1.el6.x86_64.rpm
-rw-r
--r-- 1 root root 2579460 Apr 9 01:06 mysql-community-libs-8.0.11-1.el6.x86_64.rpm
-rw-r
--r-- 1 root root 1902676 Apr 9 01:06 mysql-community-libs-compat-8.0.11-1.el6.x86_64.rpm
-rw-r
--r-- 1 root root 395918848 Apr 9 01:07 mysql-community-server-8.0.11-1.el6.x86_64.rpm
-rw-r
--r-- 1 root root 49092596 Apr 9 01:07 mysql-community-test-8.0.11-1.el6.x86_64.rpm
|
然后创建mysql用户:
1
2
|
useradd mysql
passwd mysql
|
2、安装顺序为:(建议装之前先把之前的mysql相关包全部卸载,rpm -e --nodeps <包名>即可) 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
[root@python ~]# rpm -ivh mysql-community-common-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-common-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
Preparing... ########################################### [100%]
1:mysql-community-common ########################################### [100%]
[root@python ~]# rpm -ivh mysql-community-libs-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-libs-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
Preparing... ########################################### [100%]
1:mysql-community-libs ########################################### [100%]
[root@python ~]# rpm -ivh mysql-community-libs-compat-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-libs-compat-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
Preparing... ########################################### [100%]
file /usr/lib64/mysql/libmysqlclient.so.16.0.0
from
install
of
mysql-community-libs-compat-8.0.11-1.el6.x86_64 conflicts
with
file
from
package mysql-libs-5.1.73-8.0.1.el6_8.x86_64
file /usr/lib64/mysql/libmysqlclient_r.so.16.0.0
from
install
of
mysql-community-libs-compat-8.0.11-1.el6.x86_64 conflicts
with
file
from
package mysql-libs-5.1.73-8.0.1.el6_8.x86_64
[root@python ~]# rpm -e
--nodeps mysql-libs-5.1.73-8.0.1.el6_8.x86_64
[root@python ~]# rpm -ivh mysql-community-libs-compat-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-libs-compat-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
Preparing... ########################################### [100%]
1:mysql-community-libs-co########################################### [100%]
[root@python ~]# rpm -ivh mysql-community-server-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-server-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
error: Failed dependencies:
mysql-community-client(x86-64) >= 8.0.0
is
needed
by
mysql-community-server-8.0.11-1.el6.x86_64
[root@python ~]# rpm -ivh mysql-community-client-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-client-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
Preparing... ########################################### [100%]
1:mysql-community-client ########################################### [100%]
[root@python ~]# rpm -ivh mysql-community-server-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-server-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
Preparing... ########################################### [100%]
1:mysql-community-server ########################################### [100%]
[root@python ~]# rpm -ivh mysql-community-devel-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-devel-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
Preparing... ########################################### [100%]
1:mysql-community-devel ########################################### [100%]
^[[A[root@python ~]# rpm -ivh mysql-community-test-8.0.11-1.el6.x86_64.rpm
warning: mysql-community-test-8.0.11-1.el6.x86_64.rpm: Header V3 DSA/SHA1 Signature,
key
ID 5072e1f5: NOKEY
error: Failed dependencies:
perl(JSON)
is
needed
by
mysql-community-test-8.0.11-1.el6.x86_64
--懒的去装perl了,因此测试套件就不装了。
|
3、安装完毕后相关信息如下:
1
2
3
4
5
6
|
[root@python ~]# mysql -V
mysql Ver 8.0.11
for
Linux
on
x86_64 (MySQL Community Server - GPL)
[root@python ~]# ll /etc/init.d/mysqld
-rwxr-xr-x 1 root root 7166 Apr 8 16:21 /etc/init.d/mysqld
[root@python ~]# ll /etc/my.cnf
--配置文件位置
-rw-r
--r-- 1 root root 1188 Apr 8 16:21 /etc/my.cnf
|
默认的datadir是在/var/lib/mysql/,可以通过修改my.cnf修改,启动命令如下:
1
2
3
4
|
[root@python ~]# service mysqld start
Initializing MySQL
database
: [ OK ]
Starting mysqld:
[ OK ]
|
4、发现没密码不能登录,于是添加skip-grant-tables到my.cnf,重启进去重置密码 。
1
2
3
4
|
mysql>
alter
user
root@
'localhost'
identified
by
'mysql'
;
ERROR 1290 (HY000): The MySQL server
is
running
with
the
--skip-grant-tables option so it cannot execute this statement
mysql> exit
Bye
|
居然不能改。。。于是:
1
2
3
4
5
6
|
mysql>
delete
from
mysql.
user
where
user
=
'root'
;
Query OK, 1 row affected (0.10 sec)
mysql> flush
privileges
;
Query OK, 0
rows
affected (0.00 sec)
mysql>
create
user
root@
'localhost'
identified
by
'mysql'
;
ERROR 1819 (HY000): Your
password
does
not
satisfy the
current
policy requirements
|
还是不能改,查看密码复杂度要求:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
mysql> show variables
like
'%pass%'
;
+
----------------------------------------------+-----------------+
| Variable_name | Value |
+
----------------------------------------------+-----------------+
| caching_sha2_password_auto_generate_rsa_keys |
ON
|
| caching_sha2_password_private_key_path | private_key.pem |
| caching_sha2_password_public_key_path | public_key.pem |
| default_password_lifetime | 0 |
| disconnect_on_expired_password |
ON
|
| mysql_native_password_proxy_users |
OFF
|
| password_history | 0 |
| password_reuse_interval | 0 |
| report_password | |
| sha256_password_auto_generate_rsa_keys |
ON
|
| sha256_password_private_key_path | private_key.pem |
| sha256_password_proxy_users |
OFF
|
| sha256_password_public_key_path | public_key.pem |
| validate_password.check_user_name |
ON
|
| validate_password.dictionary_file | |
| validate_password.length | 8 |
| validate_password.mixed_case_count | 1 |
| validate_password.number_count | 1 |
| validate_password.policy | MEDIUM |
| validate_password.special_char_count | 1 |
+
----------------------------------------------+-----------------+
|
查看官网https://dev.mysql.com/doc/refman/8.0/en/validate-password-options-variables.html#sysvar_validate_password.policy 。
发现此值有3个,如下所示:
于是设置为0,然后将validate_password.length设置为4,表示最少需要4字符。之所以设置为4是因为这个参数的值不能小于如下公式的计算结果:
1
2
3
|
validate_password.number_count
+ validate_password.special_char_count
+ (2 * validate_password.mixed_case_count)
|
于是继续创建用户,MySQL8.0取消了直接grant创建用户的语法,只能先create user再grant,因此创建root如下:
1
2
3
4
5
6
|
mysql>
create
user
root@
'localhost'
identified
by
'mysql'
;
ERROR 1396 (HY000): Operation
CREATE
USER
failed
for
'root'
@
'localhost'
mysql> FLUSH
PRIVILEGES
;
Query OK, 0
rows
affected (0.00 sec)
mysql>
create
user
root@
'localhost'
identified
by
'mysql'
;
ERROR 1396 (HY000): Operation
CREATE
USER
failed
for
'root'
@
'localhost'
|
尼玛...什么玩意儿?
于是去逛了一圈stackoverflow,都说这是一个BUG,于是操作如下:
1
2
3
4
5
6
7
8
|
mysql>
drop
user
root@
'localhost'
;
--是的没错,虽然没有root@'localhost'用户,但你还是要删一遍。
Query OK, 0
rows
affected (0.05 sec)
mysql> FLUSH
PRIVILEGES
;
Query OK, 0
rows
affected (0.01 sec)
mysql>
create
user
root@
'localhost'
identified
by
'mysql'
;
Query OK, 0
rows
affected (0.03 sec)
mysql>
grant
all
on
*.*
to
root@
'localhost'
with
grant
option
;
Query OK, 0
rows
affected (0.03 sec)
|
终于改完密码了...去掉参数文件的skip-grant-tables参数,service mysqld restart重启服务.
5、终于设置好密码了,建一个测试用户leo,然后尝试远程连接下吧:
1
2
3
|
$ mysql -uleo -pmysql -h192.168.1.193
mysql: [Warning] Using a
password
on
the command line interface can be insecure.
ERROR 2059 (HY000): Authentication plugin
'caching_sha2_password'
cannot be loaded: /usr/lib/mysql/plugin/caching_sha2_password.so: cannot
open
shared object file:
No
such file
or
directory
|
我这5.7的mysql工具都连不上,这就尴尬了,查看认证相关参数:
1
2
3
4
5
6
7
|
mysql> show variables
like
'%auth%'
;
+
-------------------------------+-----------------------+
| Variable_name | Value |
+
-------------------------------+-----------------------+
| default_authentication_plugin | caching_sha2_password |
+
-------------------------------+-----------------------+
1 row
in
set
(0.02 sec)
|
查看官网发现此值的取值如下:
官网还说此值影响create user不显式指定auth plugin时密码的默认加密算法,卧槽...那岂不是说我之前创建的leo用户使用的是默认的caching_sha2_password认证,查看一下:
1
2
3
4
5
6
7
8
9
10
|
mysql>
select
user
,host,plugin
from
mysql.
user
;
+
------------------+-----------+-----------------------+
|
user
| host | plugin |
+
------------------+-----------+-----------------------+
| leo | % | caching_sha2_password |
| mysql.infoschema | localhost | mysql_native_password |
| mysql.session | localhost | mysql_native_password |
| mysql.sys | localhost | mysql_native_password |
| root | localhost | caching_sha2_password |
+
------------------+-----------+-----------------------+
|
完了,全TM完了...... 。
显然不能直接update plugin,因为这可能导致加密的密码无法被正确解密,你所有的密码都会变异,因此除root@'localhost'外全部删掉重建.
首先需要在my.cnf里添加:default_authentication_plugin=mysql_native_password,然后service mysqld restart重启服务:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
mysql> drop user leo;
Query OK,
0
rows affected (
0.10
sec)
mysql> flush privileges;
Query OK,
0
rows affected (
0.00
sec)
mysql> create user leo identified by
'mysql'
;
Query OK,
0
rows affected (
0.02
sec)
mysql> grant all on *.* to leo;
Query OK,
0
rows affected (
0.08
sec)
$mysql -V
mysql Ver
14.14
Distrib
5.7
.
20
,
for
Linux (x86_64) using EditLine wrapper
$ mysql -uleo -pmysql -h192.
168.1
.
193
mysql: [Warning] Using a password on the command line
interface
can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
16
Server version:
8.0
.
11
MySQL Community Server - GPL
Copyright (c)
2000
,
2017
, 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>
|
至此远程连接正常.
总结 。
以上所述是小编给大家介绍的MySql 8.0.11安装配置教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我网站的支持! 。
原文链接:https://www.cnblogs.com/leohahah/archive/2018/05/16/9044904.html 。
最后此篇关于MySql 8.0.11安装配置教程的文章就讲到这里了,如果你想了解更多关于MySql 8.0.11安装配置教程的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在做一个关于代码学院的教程,我在这里收到一个错误,说“看起来你的函数没有返回‘唉,你没有资格获得信用卡。资本主义就是这样残酷。’”当收入参数为 75 时。”但是该字符串在控制台中返回(由于某种原因
我正在阅读 Go 的官方教程,但很难理解 Channel 和 Buffered Channels 之间的区别。教程的链接是 https://tour.golang.org/concurrency/2和
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题? Update the question所以它是on-topic对于堆栈溢出。 9年前关闭。 Improve this que
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,因为
作为 iOS 新手,有大量书籍可以满足学习基础知识的需求。现在,我想转向一些高级阅读,例如 OAuth 和 SQLite 以及动态 API 派生的 TableView 等。您可以推荐任何资源吗? 最佳
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 8 年前。 Improve
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 8 年前。
前言 很多同学都知道,我们常见的CTF赛事除了解题赛之外,还有一种赛制叫AWD赛制。在这种赛制下,我们战队会拿到一个或多个服务器。服务器的连接方式通常是SSH链接,并且可能一个战队可能会同时有
Memcached是一个自由开源的,高性能,分布式内存键值对缓存系统 Memcached 是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象),这些数据可以是数据库调用、A
Perl 又名实用报表提取语言, 是 Practical Extraction and Report Language 的缩写 Perl 是由 拉里·沃尔(Larry Wall)于19
WSDL 是 Web Services Description Language 的缩写,翻译成中文就是网络服务描述语言 WSDL 是一门基于 XML 的语言,用于描述 Web Services 以
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 6年前关闭。 Improve thi
我正在寻找解释在 WPF 中创建自定义用户控件的教程。 我想要一个控件,它结合了一个文本 block 、一个文本框和一个启动通用文件打开对话框的按钮。我已经完成了布局,一切都连接好了。它有效,但它是三
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我接近 fourth page of the Django tutorial 的开始看着vote查看,最后是这样的: # Always return an HttpResponseRedirect a
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
是否有任何好的 Qt QSS 教程,或者在某个地方我可以看到样式小部件的示例?如果某处可用,我想要一些完整的引用。除了有关如何设置按钮或某些选项卡样式的小教程外,我找不到任何其他内容。 最佳答案 Qt
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我是一名优秀的程序员,十分优秀!