CentOS7安装MySQL,python3
2022/2/5 19:12:55
本文主要是介绍CentOS7安装MySQL,python3,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
写在前面,后面所有的软件包均放在/opt/software/下,安装均在/opt/apps/下
1.安装mysql8
1.1 资源
链接:https://pan.baidu.com/s/1csFQM-T_FATThGuw2rmOAA
提取码:good
1.2 检查虚拟机是否有mariadb
CentOS7一般有一个自带的MySQL体系的数据mariadb,需要先卸载了,顺序执行下面命令
rpm -qa|grep mariadb rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 rpm -qa|grep mariadb
1.3下载mysql8并放入/opt/software/下,并开始搭建
# 解压MySQL8安装包 tar -zxvf mysql-8.0.21-el7-x86_64.tar.gz # 更名并移动 mv mysql-8.0.21-el7-x86_64 mysql8 mv mysql8 /opt/apps/ # 进入mysql8目录下,创建mysql8数据文件存放目录 cd /opt/apps/mysql8/ mkdir mysqldb # 创建MySQL组和用户 groupadd mysql # 创建用户(-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限) useradd -r -g mysql -s /bin/false mysql # 给mysql目录及其子文件添加用户组和用户 chown -R mysql:mysql ./ # 创建MySQL配置文件 vi /etc/my.cnf # 放入以下内容 # ------------------------------------- [mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=/opt/apps/mysql8 # 设置mysql数据库的数据的存放目录 datadir=/opt/apps/mysql8/mysqldb # 允许最大连接数 max_connections=10000 # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统 max_connect_errors=10 # 服务端使用的字符集默认为UTF8 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 默认使用“mysql_native_password”插件认证 default_authentication_plugin=mysql_native_password [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=utf8 # ------------------------------------- # 安装mysql cd /opt/apps/mysql8/bin ./mysqld --initialize --console
1.4启动mysql
cd /opt/apps//mysql8/support-files/ ./mysql.server start
初次运行会报一个错误
我们不是专业的dba,在这里我们就暴力点,直接给mysql8赋予所有的权限就好了
chmod 777 /opt/apps/mysql8/ cd /opt/apps/mysql8/support-files ./mysql.server start
启动成功
1.5登录MySQL并修改密码
cd /opt/apps/mysql8/bin ./mysql -uroot -pu3&k=d+yw+1y
此时会报一个错误
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
我看了很多安装博客,安装的时候都没有提到,我每次安装的时候都有,属实是恶心到我了。在这里搞一个通用的解决办法。先打开前面的my.cnf配置文件,在[mysqld]
下面加上一行skip-grant-tables
,保存,然后执行 /opt/apps/mysql8/support-files/mysql.server restart重启MySQL服务器,再次登录,只输入登录名,输入密码的时候按下回车,一次不行就两次,就绵密登陆进去了。
修改登陆密码,
use mysql
说明:8.0版本不允许在跳过策略 skip-grant-tables 时修改密码。
先清除root用户密码,删除my.conf添加的 skip-grant-tables 后,通过空密码正常访问数据库后,就可以修改密码了。
补充:5.7/5.5 版本在此时就可以直接改一个新密码了。
将密码清空以后,输入exit;退出MySQL,然后去配置文件中删除skip-grant-tables
保存,重启mysql,再次输入密码进入,然后就可以修改密码了。
重新进入mysql,输入修改密码操作,又会出现一个错误,我的耐心真的快被耗尽了。
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
此时输入 set password='一个足够复杂你又记得住的密码';
记住,不要输入一个太简单的密码,不然又会报一个错误。这个错误如下
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
如果你非要设置123456这种简单密码,按照如下操作
执行如下两条语句:
set global validate_password.policy=0; set global validate_password.length=1;
然后再执行set password='一个足够复杂你又记得住的密码';
1.6配置允许远程登录
use mysql update user set user.Host='%'where user.User='root'; flush privileges; quit
在Windows上使用vscode连接mysql,博主我测试成功。
这篇关于CentOS7安装MySQL,python3的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-16MySQL资料:新手入门教程
- 2024-11-15MySQL教程:初学者必备的MySQL数据库入门指南
- 2024-11-15MySQL教程:初学者必看的MySQL入门指南
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程