Linus环境安装MySql

223 阅读2分钟
  1. Linus安装配置MySql

    1.安装mysql-server并设置root密码

    2.安装mysql-client

    3.安装MySql依赖包

    4.启动MySql

  2. 设置远程登录,在本地环境下连接MySql

    1.设置配置文件

    2.创建超级用户并授权

    3.在本地环境下连接MySql

    4.测试是否连接可用

  3. 测试用Java连接远程数据库

1.Linus安装配置MySql

1.安装mysql-server并设置root密码

mysql-server表示服务器,是服务端;它是mysql核心程序,生成管理数据库实例,数据库实例任务调度线程之类,并提供相关接口供不同客户端调用

sudo apt-get install mysql-server

Snipaste_2023-10-16_16-27-25.png

在下载过程中,会有弹窗提示设置root用户密码

Snipaste_2023-10-16_15-41-44.png

Snipaste_2023-10-16_15-41-55.png

2.安装mysql-client

MySQL Client是一款基于MySQL服务器的客户端工具,用于管理数据库、执行SQL命令、备份数据库等操作

它可以与MySQL数据库进行交互,提供了一些GUI界面和命令行工具,可以帮助用户更方便、快速地管理MySQL数据库

sudo apt install mysql-client

3.安装MySql依赖包

libmysqlclient-dev包含一些开发库和头文件,使我们可以使用C或C++等编程语言对MySQL数据库进行编程

同时,它还提供了用于连接MySQL服务器的API和工具,例如mysql_config

sudo apt install libmysqlclient-dev

4.启动MySql

mysql -uroot -p密码

Snipaste_2023-10-16_16-34-02.png

2.设置远程登录,在本地环境下连接MySql

1.设置配置文件

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf  

注释掉bind-address = 127.0.0.1

保存退出

2.创建超级用户并授权

进入mysql,创建超级用户

create user 用户名@'%' identified by '密码';

这里不要使用root,会报错,使用linus对应的用户名

授权

GRANT all on *.* TO 用户名@'%';

刷新

flush privileges;

Snipaste_2023-10-16_16-42-52.png

重要

退出mysql后,重启mysql服务

service mysql restart

3.在本地环境下连接MySql

Snipaste_2023-10-16_16-47-29.png

正确配置的结果

Snipaste_2023-10-16_16-48-10.png

4.测试是否连接可用

1.在本地新建查询

创建数据mydb,创建表test

CREATE DATABASE `mydb`;

USE `mydb`;

CREATE TABLE `test`(
c TINYINT(3) ZEROFILL);

2.在虚拟机上查看

Snipaste_2023-10-16_16-55-28.png

3.测试用Java连接远程数据库

用JDBC简单测试

添加数据

INSERT INTO `test` VALUES(2),(pow(2,4));

查询数据,注意对应的IP地址为对应虚拟机的IP地址,并设置对应相应的超级用户

package com.prettyspider.jdbc;

import org.junit.Test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;


public class jdbc05_ResultSet {
    @Test
    public void DQL() throws Exception {
        //1.注册驱动
//        Class.forName("com.mysql.cj.jdbc.Driver");
        //2.获取连接

        String url = "jdbc:mysql://192.168.137.147:3306/mydb";
        String user="prettyspider";
        String password = "12345678";

        Connection conn = DriverManager.getConnection(url, user, password);
       //3.定义sql
        String sql = "select * from test";
        //4.获取执行sql语句的对象
        Statement stmt = conn.createStatement();
        //5.执行sql语句
        ResultSet resultSet = stmt.executeQuery(sql);
        //6.获取数据
        while(resultSet.next()) {
            String value = resultSet.getString(1);
            System.out.println(value);

        }
        //7.释放资源
        resultSet.close();
        stmt.close();
        conn.close();
    }
}

结果

Snipaste_2023-10-16_17-00-25.png