这个是公司技术基础建设的一部分,在以后我会逐步推出更多的技术相关文章,感觉有用的请关注。
首先去mysql 官网下载 mysql , 现在一般采用的mysql5.7+ 的版本。
mysql下载地址:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.29-winx64.zip
如果下载地址已经失效,请访问:https://dev.mysql.com/downloads/mysql/ 点击 Looking for the latest GA version? 就可以下载 5.7+ 的版本了。
然后把下载好的mysql 解压缩到指定的位置,比如:D:oolsworkToolsmysql-5.7.29-winx64
在mysql-5.7.29-winx64下,建立data文件夹和my.ini 文件。data文件夹是MySQL数据库的文件夹。文件夹的位置可以随意放置,在my.ini 文件对应的 datadir 写一样的就行,不要有中文路径,避免出现问题。
my.ini 文件详细如下,注意字符集要使用 utf8mb4 ,存储引擎要用INNODB 。为什么要使用 utf8mb4 ,存储引擎为什么要用 INNODB ,我会在其他的文章中详细说明。
安装目录和存放目录需要双斜线,不然会报错,另外不能有空格。 my.ini 文件本身的文本编码要存储成 UTF-8 方式。 Win10 默认是 ANSI 方式,这个要注意。
可以复制以下内容到记事本中。推荐使用 EditPlus 或者其他类似软件,方便修改编码格式等。
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[mysqld]
#设置3306端口 ,如果是线上服务器,为了保证安全可以修改为其他端口,比如 9999 等
port = 3306
# 设置mysql的安装目录 ,注意这里需要双斜线,不然会有问题。
basedir=D:oolsworkToolsmysql-5.7.29-winx64
# 设置mysql数据库的数据的存放目录, 这里根据自己的实际情况进行修改。
datadir=D:oolsworkToolsmysql-5.7.29-winx64data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server= utf8mb4
#开启查询缓存
explicit_defaults_for_timestamp=true
skip-grant-tables
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
Mysql 需要 VC++ 2013 版本 ,在安装前要先安装好,不然在安装mysql 的时候会报错。
VC++2013 的下载地址:
https://www.microsoft.com/zh-CN/download/details.aspx?id=40784
以管理员身份运行 CMD ,这里要特别注意,如果不是用管理员身份运行也会报错。因为我没有配置环境变量,所以需要到mysql 所在目录下执行命令。以管理员身份运行 CMD 之后,先切换到D 盘 ,根据自己Mysql解压缩的位置进行操作。
D:
cd D:oolsworkToolsmysql-5.7.29-winx64bin
mysqld --initialize --user=mysql --console
经过这一步如果没有问题,会打印出默认的初始密码,需要记录下初始密码,如果没有记录,那就需要修改 my.ini 文件进行无密码登录。
安装服务 运行:mysqld --install mysql
启动服务 运行:net start mysql
链接mysql 运行:mysql -u root –p
输入初始密码。初始密码可以参考我给出的截图。
修改密码 : set password for root@localhost = password('新的密码');
如果 出现错误:The MySQL server is running with the –skip-grant-tables option so it cannot execute this statement
运行:flush privileges;
如果需要其他机器访问可以运行以下命令
#添加远程访问权限
use mysql;
update user set host = '%' where user = 'root';
select host, user from user;
exit;
退出后,记得重启生效。这个很重要,重启生效 重启生效 重启生效!
创建数据库命令:
CREATE DATABASE kjz DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
一个致力于提高中小公司技术管理的人,致力于提高公司整体技术实力的人。
下一篇文章 数据库使用规范