服务器安装Mysql8.0.13并解决msvcp140.dll错误
- 环境介绍
- 官网下载MySql
- 配置my.ini文件
- 初始化MySql
- 错误解决
- 安装mysql
- 启动mysql
- 连接mysql,并自定义密码
- navicat连接mysql
- 导入数据库
- navicat远程连接
环境介绍
服务器:winserver2016
需求:安装mysql数据库
官网下载MySql
下载图中描述文件,并copy到服务器上。
配置my.ini文件
在服务器上对下载的压缩包进行解压,解压目录为你所要安装mysql的目录。解压完成后是没有my.ini文件的。这时你需要自己创建初始化my.ini文件并对其内容进行如下填充。
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\programs\MySql
# 设置mysql数据库的数据的存放目录
datadir=D:\programs\MySql\Data
# 允许最大连接数
max_connections=500
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
如果不是8.0之后版本的,需要手动创建代码中所设置的两个文件夹,不然初始化时会出现找不到文件夹的情况而导致初始化失败。
初始化MySql
使用管理员模式启动命令行,进入mysql的安装目录下的bin文件夹。文件如下,其中有个名为mysqld的文件。
在命令行进入bin目录后,执行如下初始化指令。
mysqld --initialize --console
正常执行结果如下:
会出现如上图显示的代码字段,root为用户名,localhost后面为登录密码。
错误解决
但是往往事情不会那么简单,安装时许多用户会和我安装时一样出现msvcp140.dll错误,没有这个dll文件。也就是缺少VC++2015版本运行库导致。直接将这个dll文件下载放在c盘对应目录下也不能正常执行。最终解决办法:
下载目标文件,选择服务器对应的版本,我的是64位的所以下载带x64的exe文件,如果是32位则下载带x86的exe文件。然后copy到服务器进行安装,安装完成重新进行初始化操作即可。
安装mysql
在初始化完成后,执行如下操作。
mysqld --install
如果出现如下提示:
Service successfully installed
则表示安装成功。
如果之前安装过的则会出现
The service already exists!
The current server installed: D:\programs\MySql\bin\mysqld MySQL
如果要删除之前的mysql,则继续执行指令
sc delete mysql
运行结果为
[SC] DeleteService 成功
然后执行安装指令
mysqld --install
出现如下提示
Service successfully installed
则表示安装成功。
启动mysql
在mysql安装成功后,执行如下启动服务指令
net start mysql
这里的mysql可以在mysqld --install的时候指定,如
mysqld --install my_mysql
那么启动时就可以用自己指定的服务名进行启动,如果未设置时,则默认为mysql。
连接mysql,并自定义密码
在安装目录的bin目录下,通过命令行执行如下指令
mysql -u root -p
然后输入初始化时系统生成的密码
这个很难记,但是也木有办法,只能直接一个个照着敲进去。然后回车
出现如下结果则代表登录成功,否则重新输来一次,重新输入密码咯。
登录成功后,执行如下指令修改密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
替换newpassword为你要设置的密码即可。
修改成功后,退出系统。
exit;
navicat连接mysql
去navicat官网下载对应系统对应的版本,然后在服务器上进行安装,安装完成后就可以打开进行连接操作了。这个软件很强大,具体的功能需要自己去摸索,但是知道怎么使用它来管理数据库足以。
安装完成后启动,然后新建mysql连接。
输入之前设置的用户名和密码之后即可连接上mysql数据库服务了。
导入数据库
这个功能一般针对于已有数据库的情况,将数据库导出为sql文件后即可备份该数据库的数据信息。打开该文件后可看到里面对应的sql指令。
1.首先创建数据库,需要名字保持一致并选中。
2.将导出的数据库文件拖到navicat软件面板,就可以进行导入操作了。导入完成后就可以查看到一个有数据的数据库了(此句是废话)
navicat远程连接
MySQL8.0 安装完成后出现无法远程连接的现象,这是因为MySQL8.0只支持 localhost 访问,我们必须设置一下才可以远程访问。
具体设置步骤如下:
① 登录MySQL
执行命令为:mysql -u root -p
回车后输入密码
② 选择 mysql 数据库
执行命令为:use mysql;
查看mysql 数据库中存储的用户信息的 user 表。
③ 查看mysql 数据库的 user 表中当前 root 用户的相关信息
执行命令为:select host,user,authentication_string,plugin from user;
执行完命令后显示一个表格, root 用户的 host默认显示的 localhost,说明只支持本地访问,不允许远程访问。
④ 更改 host 的默认配置
执行命令为:update user set host=’%’ where user=‘root’;
⑤ 刷新
执行命令为:flush privileges;
上述步骤完成之后,用 Navicat 进行远程连接即可。当然服务器和控制台的3306端口必须得打开才能远程连接。