·
日常教程 ·
70356
Mysql创建用户并授权以及开启远程访问
一、创建用户并授权
1、登录mysql
mysql -u root -p
2、创建数据库
create database test;//以创建test为例
3、创建用户
创建user01,只能本地访问
create user user01@'localhost' identified by 'password';
创建user02,可以远程访问
create user user02@'%' identified by 'password'
4、修改用户密码
以user01为例:
set password for 'user01'@'localhost'=password('anotherpassword')
5、授权
授予user01管理test的全部权限
grant all privileges on test.* to user01;
授予user02查看权限,并修改密码
grant select on *.* to 'user02'@'%' identified by 'anotherpassword';
授予所有权限
GRANT ALL PRIVILEGES ON *.* TO zhangsan@"%" IDENTIFIED BY "lisi";
二、设置mysql允许远程连接(ubuntu系统)
1、 sudo vi /etc/mysql/my.cnf
2、注释掉如下两行:
bind-address=127.0.0.1
skip-network(mysql5.6版本里没有这行)
3、sudo service mysql restart
结合一中的授权,被授权用户可以远程访问
如果mysql远程访问没有开启,其它通过远程访问如django,mysql客服端均出现如下提示:
Mysql ERROR 1698 (28000) ,特此记录一下
Mysql创建用户并授权以及开启远程访问的相关教程结束。
直接用scipy.spatial.distance.cosine易出错,因其默认对齐全部维度(含大量0)、不处理NaN、未中心化,导致稀疏数据下相似度失真;应先构建用户-物品矩阵并保留NaN,再基于共同评分项子集计算余弦相似度。 为什么直接用scipy.spatial.distance.cosine...
asyncio.create_task()是Python3.9+创建Task的标准方式,语义清晰、开销更低;ensure_future()因多态逻辑易误用且不推荐用于新代码;create_task()立即调度协程并返回Task,避免悬空协程;loop.create_task()适用于底层控制场景。 ...
Pylance类型检查默认关闭,需手动配置"python.analysis.typeCheckingMode":"basic"启用;必须确保状态栏显示Pylance紫色图标、python.languageServer设为Pylance、python.defaultInterpreterPath指向正...
本文介绍多种优化方法,帮助你在处理大规模数据时高效创建条件列,包括向量化操作、numpy.select、pd.cut和缓存函数调用等策略,显著减少计算开销并提升可读性与执行速度。 本文介绍多种优化方法,帮助你在处理大规模数据时高效创建条件列,包括向量化操作、`numpy.select`、`pd.cu...
本文详解如何基于已有张量x的形状,无需预先知晓其维数,构造形如(k,x.shape)的新张量——核心是利用Python解包语法*x.shape将torch.Size对象无缝转为位置参数。 本文详解如何基于已有张量`x`的形状,**无需预先知晓其维数**,构造形如`(k,x.shape)`的新张量——...
因为在__call__中控制单例可完整拦截类调用,避免__init__重复执行;而仅在__new__中缓存会导致每次调用仍触发__init__,造成状态重置或副作用。 为什么在__call__里做单例控制比__new__更可靠 因为__new__只管“造对象”,而类被调用时真正走的是元类的__cal...
本文介绍如何基于已有张量x的形状,动态构造形如(k,*x.shape)的新张量,避免硬编码维度数量,提升代码鲁棒性与可复用性。 本文介绍如何基于已有张量`x`的形状,动态构造形如`(k,*x.shape)`的新张量,避免硬编码维度数量,提升代码鲁棒性与可复用性。 在PyTorch中,当我们需要基于一...
yield的本质是暂停并交出控制权,而非返回值;调用生成器函数立即返回生成器对象,函数体不执行,仅在首次next()时运行至第一个yield并挂起,保存全部状态。 yield的本质不是“返回值”,而是“暂停并交出控制权”——调用生成器函数时,它立刻返回一个生成器对象,函数体根本不执行;只有第一次调用...