1. MySQL下载和配置
进入官网:https://www.mysql.com/downloads/
点击MySQL Community(GPL) Downloads
点击MySQL Community Server,选择Windows (x86, 64-bit), ZIP Archive进行下载。
- 解压缩后,用管理员打开CMD,切换到MySql的解压目录下的
bin
目录: - 再输入命令
mysqld --initialize --console
来初始化数据库,并记录随机生成的密码: - 输入
mysqld -install
将mysql安装为Windows的服务: - 输入命令
net start mysql
或sc start mysql
启动mysql服务 - 输入
mysql -u root -p
来登陆数据库,并输入前面记录的临时密码: - 登陆成功后输入命令
alter user 'root'@'localhost' identified by '想要设置的密码';
将原来复杂的密码修改为自己的密码,并输入commit;
提交: - 输入
quit
退出数据库,再次登陆数据库,这时我们用的是我们修改后的密码登陆的: - 最后我们将Mysql的bin目录配置到环境变量中,方便我们下次启动,而不用切换路径:
停止MySQL服务:net stop mysqld
或sc stop mysqld
删除MySQL服务:sc delete mysqld
或mysqld -remove
(需先停止服务)
对于MySQL的使用,可以参考:
MySQL常用命令 MySQL教程 MySQL foreignkey
Linux中安装
sudo apt install mysql-server
sudo apt install mysql-client
通过mysql -u用户名 -p密码 的命令连接Mysql数据库时,报错"can't connect to local mysql serverthrough socket'/var/run/mysqld/mysqld.sock'"
解决方法:
在不重新安装mysql的情况下,通过如下命令来解决,具体的就是先停止mysql服务,再重新开启mysql服务
cd /etc/init.d
sudo service mysql stop
sudo service mysql start
2. Spring配置MySQL
- 创建Spring Boot项目,添加依赖Spring Web, Spring Data JPA, and MySQL Driver
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
- 创建一个数据库
mysql> create database db_example;
mysql> create user 'springuser'@'%' identified by 'ThePassword';
mysql> grant all on db_example.* to 'springuser'@'%';
- 在src/main/resources/application.properties文件中进行配置
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://${MYSQL_HOST:localhost}:3306/db_example
spring.datasource.username=springuser
spring.datasource.password=ThePassword
#spring.datasource.driver-class-name =com.mysql.jdbc.Driver
spring.jpa.database=mysql
spring.jpa.show-sql=true
spring.sql.init.mode=always
- 创建User对象
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import lombok.Data;
@Data
@Entity
@Table(name = "user")
public class User{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
private String username;
private String password;
}
- 创建UserRepository
import org.springframework.data.repository.CrudRepository;
public interface UserRepository extends CrudRepository<User, Integer>{
}
- src/main/resources/schema.sql
DROP TABLE user;
create table user (
id int(11) NOT NULL,
username varchar(32) DEFAULT '',
password varchar(255) DEFAULT '',
PRIMARY KEY (id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO user VALUES (1, 'aa', '123');
INSERT INTO user VALUES (2, 'bb', '123');
INSERT INTO user VALUES (3, 'cc', '123');
INSERT INTO user VALUES (4, 'dd', '123');