前言
安装数据库是一项非常繁琐的工作,每一步都至关重要。安装过程中遇到问题不用害怕,将出现的问题放到网上,参照一下别人的思路,问题总会解决的。下面是我总结的MySQL8.0.21安装以及使用Java语言连接数据库的教程,希望能对你有一定的帮助。
一、MySQL8.0.21的下载
- 下载地址:点击跳转至百度网盘
提取码:a27m - 下载后,解压到合适的文件夹目录下
二、MySQL8.0.21的安装
- 找到之前解压的文件,进入bin子文件夹将bin文件夹的路径复制
- 在桌面此电脑图标出点击鼠标右键,选择属性
- 左上方点击高级系统设置
- 右下角点击环境变量
- 在下方的系统变量中,选中变量Path,然后点击右下的编辑
- 选择右上方的新建,将第2步复制的路径粘贴,最后点击确定
此时,恭喜你完成了系统环境变量的设置. - 首先我们看一下安装目录下有没有my.ini文件,如果没有也不要紧,我们可以在该目录下创建一个文本文档,然后将文件后缀改为ini即可。文件内容如下:
[mysqld]
# 设置3306端口
port=3306
skip_grant_tables
# 设置mysql的安装目录
basedir=F:\\mysql-8.0.21-winx64
# 设置mysql数据库的数据的存放目录
datadir=F:\\mysql-8.0.21-winx64\\Data
# 允许最大连接数
max_connections=800
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
注意datadir和basedir文件夹的路径要换成自己电脑的MySQL安装目录下.路径中最好使用\\.
- 打开CMD,以管理员的身份运行
- 参照图片中的操作进入MySQL的bin目录
- 在MySQL目录下的bin目录下执行命令
mysqld --initialize --console
此时要记住初始化密码,如果不小心关掉了,可以MySQL安装目录下的Data文件夹删掉,然后再初始化一次.
如果执行后出现以下问题:
问题原因:另存为配置my.ini文件时,“编码”设为:UTF-8。
更正:重新另存,将编码改为“ANSI”后,初始化成功。
- 安装MySQL服务
执行下面命令:
mysqld --install
现在可以松一口气了,成功了耶!!!
- 启动MySQL的服务
net start mysql
Congratulations,到这里您的MYSQL已经安装成功了!
- 使用第11步得到的初始化密码登录MySQL
mysql -u root -p
如果登录出现以下问题:
打开 my.ini 配置文件找到 [mysqld] 然后在下面加上: skip_grant_tables (意思应该是启动MySQL服务的时候跳过权限表认证 )
- 修改登录密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
BY后面输入的是你的新密码,我输入的是root,方便记忆,可以根据个人习惯配置密码.
以上就是所有步骤了,提醒一下如果不是第一次安装mysql必须把旧文件删干净哦,不然会安装失败.
三、Navicat Premium的使用
对初学者来说,使用命令行的方式操作数据库不太友好,所以经常要配合数据库可视化工具来使用,下面我来介绍Navicat Premium 12的使用.
-
连接到本地数据库:点击左上角的连接图标,选择MySQL.
连接名一般使用数据库类型号,输入密码后点击确定.
-
打开连接,使用数据库之前一定要打开连接.
-
创建个人数据库。不要随意改动系统自带的数据库.
点击确定
自此,创建数据库成功。我们就可以愉快地在里面创建表格、查看以及修改数据库数据等.
四、使用Java语言连接MySQL数据库
- 首先在Navicat Premium 中手动创建表格users,并插入一些数据:
- 通过Eclipse连接数据库,并将数据库jdbc中users表中的数据读出,代码如下:
import java.sql.*;
import javax.swing.JOptionPane;
public class test {
public static void main(String[] args){
Statement stmt=null;
ResultSet rs=null;
Connection conn=null;
try{
//1.注册数据库驱动
Class.forName("com.mysql.jdbc.Driver");
//2.通过DriverManager获取数据库连接
String url = "jdbc:mysql://127.0.0.1:3306/JDBC";
String username = "root";
String password = "123456";
conn = DriverManager.getConnection(url, username, password); // 建立连接
//3.通过Connection对象获取Statement对象
stmt = (Statement) conn.createStatement();
//4.使用Statement执行SQL语句
String sql = "select * from users";
//5.操作ResultSet结果集
rs = stmt.executeQuery(sql);
System.out.println("id | name | password");
while(rs.next()){
int id = rs.getInt("id");
String name = rs.getString("name");
String psw = rs.getString("password");
System.out.println(id+" | "+name+" | "+psw);
}
}catch(Exception e){
JOptionPane.showMessageDialog(null, "数据库异常!" + e.getMessage());
return;
}finally {
//6.释放数据库资源
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
stmt = null;
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
conn = null;
}
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
rs = null;
}
}
}
}
注意在测试之前需要安装jar包才能连接数据库.具体教程网上的已经很详细了,这里就不啰嗦了.
- 测试结果
总结
这是我 个人的第一篇博客,写博客的目的是将遇到的问题进行总结,以免重蹈覆辙,同时也希望将这些思路分享出来,对其他人能有一定的帮助。感谢观看!