数据库相关

一、MySQL数据库配置

MySQL的官网www.mysql.com

1、解压绿色版mysql,如下图

 

 

 对比一下下图5.6以前的版本,少data目录(存放数据)和my-default.ini文件(配置信息)

 

 

 2、安装服务

1、运行cmd(管理员版本,否则没有权限 开始->附件->命令提示符右键),如下图

 

 

 2、对于新版mysql5.7没有了data目录,我们需要运行命令创建。找到mysql所在的磁盘路径

 

 

 

 

 3、运行命令mysqld –install安装服务,如下图:

 

 

 如果不需要mysql里,只需要运行mysqld –remove即可移除,如下图

 

 

 3、运行net start mysql 启动服务,如下图

 

 

 如需要配置是否开机启动mysql可以在windows服务里面配置。

如果服务启动不起来但不报任何错误

最后总结一下该问题的解决方法:

方法1:data文件夹是自己创建的,删除data文件夹,在DOS界面进入到MySQL的文件夹下输入这个命令:mysqld  --initialize ,重新初始化一个data文件。(大部分好像都是这个原因)
方法2:配置my.ini。下面这个好像有说到配置my.ini
https://blog.csdn.net/liyangyang0528/article/details/54233632#commentBox
方法3:就是看你的IP有没有被占用(也就是我遇到的问题)
方法4:自己在DOS界面在MySQL文件夹的bin目录中输入mysqld --console命令,查询错误日志,毕竟每个人遇到的错误原因都不一定相同,可以通过自己的日志找到自己真正错误的原因(推荐方法)
C:\Windows\system32>cd C:\Program Files\MySQL\MySQL Server 5.7\bin

C:\Program Files\MySQL\MySQL Server 5.7\bin>mysqld --console
————————————————
版权声明:本文为CSDN博主「没带眼镜听不清啊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_37915248/article/details/82631398

 

3、客户端测试

1、mysql –uroot –p 如下图

 

 

 若报1045错误,如

 

 

 原因:初始化mysql,在这里,初始化会产生一个随机密码,如下图框框所示,记住这个密码,后面会用到(mysqld --initialize --console)

 

 

 或者可以在日志(在MySQL文件夹中的data文件夹中的.err文件)里面查找到安装时的临时随机密码

 

 

 

当时我是把所有密码自己设置过的密码都试了一遍然后就出现了这句话,发现了不一样的东西,

             Your password has expired. To log in you must change it using a client that supports expired passwords.

立马就去百度了一下,发现是密码过期了,让我修改密码,那就好办了,然后就在bin目录下输入mysqladmin -u root -p password就OK了。(enter  password处输入那个随机临时密码)

 

 

————————————————
版权声明:本文为CSDN博主「没带眼镜听不清啊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_37915248/article/details/83005946

 

4、修改用户名密码

1、运行命令

use mysql;

UPDATE user SET authentication_string=password('123456') where user='root';

FLUSH PRIVILEGES;

如下图:

 

 2、重新登陆,运行命令mysql -uroot -p123456

 

 

5、配置编码为UTF-8

1、查看默认编码

 

 2、在mysql5.7的根目录下,新建my.ini文件,(5.7后没了这文件,自己新建),如下图:

 

 

Mysql服务程序启动时会自动读取my.ini获得各项配置参数,包括编码

2、编辑my.ini

在[mysqld]节点下,配置服务端编码,添加2项内容

character_set_server=utf8

[mysql]节点的,这个是配置客户端信息的

我们也添加[mysql]节点,并配置编码UTF8

[mysql]

default-character-set=utf8

 

合起来如下图:

 

 

6、测试查询

1、修改了配置文件必须先重启服务

 

 2、正常使用root用户登陆

 

 3、运行命令show variables like "%character%"查看系统字符集变量,如下图:

 

 使用utf8mb4要求:

1.MySQL版本要求:不低于5.5.3(mysql是在5.5.3之后增加了utf8mb4这个字符集)
2.JDBC驱动版本要求:mysql connector版本高于5.1.13

我的my.cnf放在/etc/my.cnf位置。找到后请在以下三部分里添加如下内容:

                  [client]
                  default-character-set = utf8mb4
                  [mysql]
                  default-character-set = utf8mb4
                  [mysqld]
                  character-set-client-handshake = FALSE
                  character-set-server = utf8mb4
                  collation-server = utf8mb4_unicode_ci
                  init_connect='SET NAMES utf8mb4'

在MySQL命令行使用sql语句进行建表时,MySQL 报错

 

 

这个问题是语法上的错误,在MySQL中,为了区分MySQL的关键字与普通字符,MySQL引入了一个反引号。
在上述的sql语句中,数据库名称使用的是单引号而不是反引号,所以会就报了这个错误出来。修改后为:
CREATE DATABASE `xiaoyaoji` CHARACTER SET utf8;
use xiaoyaoji

windows命令行窗口打开mysql,并创建数据库,导入sql文件

mysql的命令以分号结尾。

1.打开一个命令行窗口,在命令行窗口中切换到mysql的安装路径下到bin文件夹(我没有配置mysql的环境变量,所以需要切换到安装路径,如果已经配置环境变量不需要切换)

cd C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin

回车输入下边的命令

mysql -h localhost -u root -p  或 mysql -u root -p

回车提示输入密码,成功后连接mysql数据库

2.创建数据库

//创建数据库并设置好编码格式

create 数据库名 mydb character set utf8;

//修改已经创建好的数据库或数据库表的编码格式

alter database mydb character set utf8;

alter table t_name convert to character set utf8;

3.打开刚创建的数据库

use 数据库名;

4.使用source指令导入sql文件

source d:a.sql;'

等待导入完成即可。

 

转载自:https://www.cnblogs.com/zzguan/p/10077008.html

 

posted @ 2020-06-03 15:39  Lingn  阅读(130)  评论(0编辑  收藏  举报