mysql数据库

通过xshell在linux上安装mysql5.7

空扰寡人 提交于 2020-02-28 23:56:46
转载自 https://www.cnblogs.com/xdzy/p/10147343.html 0)通过xshell连接到远程服务器 1)彻底删除原来安装的mysql 首先查看:rpm -qa|grep -i mysql 删除操作(一个一个删除):yum remove '软件名' 查看关于mysql的文件:find / -name mysql 可以通过xftp直接删除 对于顽固的文件夹:rm -rf 文件名(删除) 2 )下载mysql包: wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 安装: yum localinstall mysql57-community-release-el7-11.noarch.rpm 查看是否安装成功: yum repolist enabled | grep "mysql.*-community.*" 3) 安装mysql: yum install mysql-community-server 启动mysql: systemctl start mysqld 关闭mysql: systemctl stop mysqld 查看是否启动: systemctl status mysqld 4 )设置开机自启: systemctl enable mysqld

java连接mysql 8.0的问题

ぐ巨炮叔叔 提交于 2020-02-28 22:19:20
mysql 8.0 是现在较新的版本,所以很多项目都开始用户mysql 8,在使用java连接mysql 8的时候,很多人想当然觉得需要使用新的连接驱动程序,比如mysql-connector-java 8.0.11,但如果用这个驱动,JDK版本必须是1.8及以上,不然会报:Unsupported major.minor version 52.0。 其实mysql 8.0使用mysql-connector-java-5.1.48就可以连接,没有必要使用mysql-connector-java 8.0.11,如果使用mysql-connector-java 8.0.11,JDK必须1.8及以上。 为什么要记录这个,就是因为同样的问题,我好像犯过两次错误,都是花了一下午的时间在找问题,开始认为是proxool的问题,因为那个0.9.1版本实在太老了,但其实根本不是那个原因。 如果使用的是低版本的JDK,请使用mysql-connector-java-5.1.48连接mysql 8数据库。 以下是区别: 1、mysql-connector-java-5.1.48 连接 <driver-url>jdbc:mysql://127.0.0.1/wechat</driver-url> <driver-class>org.gjt.mm.mysql.Driver</driver-class> 2

php 插入MySQL中文乱码问题

浪尽此生 提交于 2020-02-28 22:01:55
参考文章 MYSQL 插入中文乱码解决方案 在用php插入中文时在数据库看到的是乱码, $sql= "insert into login(username, password, passwordMD5, email, registerDate)values('$username','$password','$passwordMD5','$email',NOW())"; 用 show create table [table_name] 来看 默认charset 是utf8没问题,接着试着直接在终端插入中文,发现可以显示中文, 参考文章设置MySQL的设置文件 my.cnf ,发现里面没有可以设置的东西。接着尝试 2.2 设置连接编码   设置了服务器、数据库和数据表部分的编码,必须设置连接编码。连接编码设置如下:   mysql> SET character_set_client=‘gbk’;   mysql> SET character_set_connection=‘gbk’   mysql> SET character_set_results=‘gbk’   设置好连接编码,下面便可以成功插入中文了:   mysql> insert into mysqlcode values(null,‘java爱好者’);   Query OK, 0 rows affected (0.02

Linux 之忘记Mysql数据库密码

帅比萌擦擦* 提交于 2020-02-28 21:10:22
前沿 第一次安装Linux,Mysql数据库时会进行一次密码的修改,当密码比较复杂时又会忘记,下面我们就来看看如何在忘记密码的情况下进行登录和修改密码。 1.首先找到Mysql数据库的配置文件 1.vim /etc/my.cnf //打开配置文件 2.skip-grant-tables //配置文件中加一行,跳过授权表 3.Mysql 命令行下设置密码 update user set outhentication_string = password(“123.com”) where user=“root” 4.flush privileges//刷新 5.exit //退出数据库 6. 把配置文件中的#skip-grant-tables,跳过授权表注释 7. service mysql start // 重启服务,再输入密码 来源: CSDN 作者: qq_42882477 链接: https://blog.csdn.net/qq_42882477/article/details/104562534

MySQL索引类型 btree索引和hash索引的区别

左心房为你撑大大i 提交于 2020-02-28 21:07:22
以下的内容,简单的讲解了两种索引的区别,但是深层次的还需要自己再好好看看,才能深入理解,最重要的是理解,而不是死记硬背。 Hash 索引结构的特殊性,其 检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引 。 可能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tree 高很多,为什么大家不都用 Hash 索引而还要使用 B-Tree 索引呢?任何事物都是有两面性的,Hash 索引也一样, 虽然 Hash 索引效率高,但是 Hash 索引本身由于其特殊性也带来了很多 限制和弊端 ,主要有以下这些。 (1)Hash 索引仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询。 由于 Hash 索引比较的是进行 Hash 运算之后的 Hash 值 ,所以它只能用于 等值的过滤 ,不能用于基于范围的过滤,因为经过相应的 Hash 算法处理之后的 Hash 值的大小关系,并不能保证和Hash运算前完全一样。 (2) Hash 索引无法被用来避免数据的排序操作 。 由于 Hash 索引中存放的是经过 Hash 计算之后的 Hash 值,而且Hash值的大小关系并不一定和 Hash 运算前的键值完全一样, 所以数据库无法利用索引的数据来避免任何排序运算

MySQL中常用的SQL语句

佐手、 提交于 2020-02-28 21:03:25
如果有名为hrinfo的数据库就删除: DROP DATABASE IF EXISTS hrinfo; 创建名为hrinfo的数据库 : CREATE DATABASE hrinfo; 选择数据库: USE hrinfo; 创建名为PERSON的表,并创建字段: CREATE TABLE PERSON( id INT(11) PRIMARY KEY AUTO_INCREMENT COMMENT '人员编号', `name` NVARCHAR(50) NOT NULL COMMENT '姓名', sex NVARCHAR(50) NOT NULL COMMENT '性别', age INT(20) NOT NULL COMMENT '年龄', rank NVARCHAR(50) NOT NULL COMMENT '等级', department NVARCHAR(100) NOT NULL COMMENT '所在部门' )COMMENT '人员信息表'; 给表里插入数据: INSERT INTO PERSON VALUES (0,'张三','男',25,'1级','开发部'); INSERT INTO PERSON VALUES (0,'王五','男',12,'2级','工程质量部'); INSERT INTO PERSON VALUES (0,'李四','女',30,'5级',

解决mysql\"Access denied for user'root'@'IP地址'\"问题

狂风中的少年 提交于 2020-02-28 21:00:10
用这个方法测试无法让所有机器都可以登录mysql服务器,只能一次设置单个ip登录,原因暂时不知道; 关于只能设置单个ip登录:查看musql的user表发现原因是‘%’用户设置了密码,在修改mysql数据库的‘%’用户的密码为‘’,即空的时候,就可以实现所有ip登录了 在MYSQL 中,用远程软件登陆服务器,有时出现:Access denied for user 'root'@'localhost' www.2cto.com 出现这种问题,主要的原因就是权限配置的时候 没有配置正确。 解决方法如下: 当用Linux/unix的tty 登陆进MYSQL 时, mysql -u root -p 会提示你输入密码,输入正确的密码后正常登陆。 然后在提示符下,打命令:show grants; 会出现root如下的权限表示:GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '565491d704013245' WITH GRANT OPTION 此时,注意看那个“@”后面的,是localhost 意思是本机登陆,,此时,如果你用远程登陆软件来登陆的话,会出现错误提示:Access denied for user 'root'@'IP地址'。。IP地址那块是你远程机器的IP地址。也就是服务器在告诉你

【MySQL索引】Hash索引与B-Tree索引 介绍及区别

若如初见. 提交于 2020-02-28 20:41:13
【摘要】 这是从《MySQL性能调优与架构设计》第六章摘录的一些知识点。 【主题】 Hash索引 B-Tree索引 【内容】 1. Hash索引 Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。 可能很多人又有疑问了,既然 Hash 索引的效率要比 B-Tree 高很多,为什么大家不都用 Hash 索引而还要使用 B-Tree 索引呢?任何事物都是有两面性的,Hash 索引也一样,虽然 Hash 索引效率高,但是 Hash 索引本身由于其特殊性也带来了很多限制和弊端,主要有以下这些。 (1)Hash 索引仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询。 由于 Hash 索引比较的是进行 Hash 运算之后的 Hash 值,所以它只能用于等值的过滤,不能用于基于范围的过滤,因为经过相应的 Hash 算法处理之后的 Hash 值的大小关系,并不能保证和Hash运算前完全一样。 (2)Hash 索引无法被用来避免数据的排序操作。 由于 Hash 索引中存放的是经过 Hash 计算之后的 Hash 值,而且Hash值的大小关系并不一定和 Hash 运算前的键值完全一样

数据库编程 for java 之MySQL数据库安装和配置

血红的双手。 提交于 2020-02-28 19:43:39
MySQL数据库for Java安装和配置三件套必备 MySQL installer MySQL server Connector/J 注意事项:先安装MySQL installer,社区版MySQL Community Edition为免费版本(下载网址:https://dev.mysql.com/downloads/windows/installer/),在MySQL installer内安装MySQL server和Connector/J。 MySQL installer安装 下载完.msi安装包后,直接安装。有5种安装类型: 开发者安装 只安装服务器 只安装客户端 全部安装 自定义安装 对于学习和开发,建议在Choosing a Setup type 中选择开发者安装Developer Default,然后一直next到finish。 检查是否已经安装MySQL server和Connector/J 打开MySQL installer 查看是否安装(有则代表安装成功,跳到如果没有继续看下文) MySQL server和Connector/J安装 增加MySQL server和Connector/J 选择需要安装的软件 注意事项:选择版本时注意Requirement,即需要的配置,如缺少,需要去下载安装再回头安装MySQL server。 MySQL server配置

如何从终端导入MySQL数据库?

只愿长相守 提交于 2020-02-28 19:34:42
如何从终端导入mysql数据库? 我找不到确切的语法。 #1楼 从终端: mysql -uroot -p --default-character-set=utf8 database_name </database_path/database.sql #2楼 Windows的首选方式: 打开控制台并启动交互式MySQL模式 use <name_of_your_database>; source <path_of_your_.sql> #3楼 打开MySQL命令行客户端,然后输入密码 更改为要用于将.sql文件数据导入到的数据库。 通过键入以下内容: USE your_database_name 现在找到您要执行的.sql文件。 如果该文件位于本地主要C:驱动器目录中,并且.sql脚本文件名为 currentSqlTable.sql ,则应输入以下内容: \\. C:\\currentSqlTable.sql 然后按Enter执行SQL脚本文件。 #4楼 当分成名称为000-tableA.sql,001-tableB.sql,002-tableC.sql的文件时,我通常使用此命令加载SQL数据。 for anyvar in *.sql; do <path to your bin>/mysql -u<username> -p<password> <database name> <