背景
接手别人项目进行维护,使用Mysql 8.0 数据库正确还原,但是项目却无法启动,经过调试发现以下问题。
MySqlException Authentication method ‘caching_sha2_password’ not supported by any of the available plugins。
通常的报这个错误是因为它的身份验证方式是 mysql_native_password ,不是caching_sha2_password导致。
Mysql 官方相关资料:https://dev.mysql.com/doc/refman/8.0/en/caching-sha2-pluggable-authentication.html
解决方法
首先找到MySql 8.0 的安装目录,看一下是否存在my...
4个月前 (10-05) 131℃ 0评论
3喜欢
因业务需求可能会导致数据存储结构发生变化,当数据保存到关系型数据库中时必将带来表结构的变化,这就涉及到对表中的列进行新增、修改、删除等操作。
在大多情况下数据库脚本执行必须是可重复的,因此对数据库表的任何表变动都需要进行判断,然而在MySQL数据库中通过SQL脚本进行列的变更就不太便利。下面记录一下曾经用到的一些MySQL脚本:
USE DATABASE NAME; -- 这里要换数据库名称
DROP PROCEDURE IF EXISTS Operate_ColumnADD_Update_Delete;
DELIMITER$$
-- 1表示新增列,2表示修改列类型,3表示删除列
CREATE PROCEDURE Operate_ColumnADD_Update_Delete(TableName VARCHAR(50),ColumnName VARCHAR(50)...
10个月前 (03-31) 98℃ 0评论
2喜欢
在应用部署后访问中出现一下错误:
ERROR 1130: Host ‘localhost’ is not allowed to connect to this MySQL server
其实就是 MySQL 不允许当前的Host进行连接。为了本地以后测试方便,暴力解决方法如下:
1.在装有MySQL的机器上登录MySQL:mysql -uroot -p密码2.选择我mysql库,执行use mysql;3.更新user表,执行update user set host = ‘%’ where user = ‘root’;这一句执行完可能会报错,不用管它。4.执行FLUSH PRIVILEGES;
转载请注明:清风博客 » Host is not allowed ...
1年前 (2019-09-06) 123℃ 0评论
0喜欢
使用INT做主键的优点:
需要很小的数据存储空间,仅仅需要4 byte 。insert和update操作时使用INT的性能比GUID好,所以使用int将会提高应用程序的性能。 index和Join 操作,int的性能最好。 容易记忆。 支持通过函数获取最新的值
使用INT做主键的缺点
如果经常有合并表的操作,就可能会出现主键重复的情况。 使用INT数据范围有限制。如果存在大量的数据,可能会超出INT的取值范围。 很难处理分布式存储的数据表。
使用GUID做主键的优点:
它是独一无二的。 出现重复的机会少。 适合大量数据中的插入和更新操作。 跨服务器数据合并非常方便。
使用GUID做主键的缺点:
存储空间大(16 byte),因此它将会占用更多的磁盘大小。很难记忆。join操作性能比int要低...
4年前 (2016-09-23) 45℃ 0评论
0喜欢
数据库中事务的四大特性(ACID):原子性、一致性、隔离性、持久性。如果一个数据库支持事务的操作,那么该数据库必须要具备以下四个特性:
原子性(Atomicity)
原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。
一致性(Consistency)
一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。
隔离性(Isolation)
隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。
持久性(Durability)
持久性是指一个事务一旦被提交...
5年前 (2016-04-10) 213℃ 0评论
0喜欢
在数据库进行表设计的时,大多情况下都习惯使用一个自增列作为主键,具体原因这里不会进行描述。在很多情况下需要对现有数据进行数据迁移,这个时候就需要保证迁移后的数据自增列的数据保持不变。SQL SERVER是支持这种迁移方式的。
首先就要先取消自增长,数据迁移完成后再恢复自增长即可。
SET IDENTITY_INSERT
允许将显式值插入表的标识列中。
语法
SET IDENTITY_INSERT [ database.[ owner.] ] { table } { ON | OFF }
实例
set IDENTITY_INSERT tableName on;
INSERT INTO tableName (id,name) VALUES (2,'name');
set IDENTITY_INSER...
9年前 (2012-04-10) 151℃ 0评论
1喜欢