热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

Windows系统如何编译安装MariaDB数据库

1.下载源码后,利用cmake工具生成sln文件。如果cmake的过程中出错,可能是因为cmake路径或者代码路径中有中文,或者cmake没有用管理员打开。2.用文本编辑器打开./sql/sql_local.cc文件,将文件以utf-8格式保存,注意不要选择将文件转换为utf-8格式3.设置ms

1.       下载源码后,利用cmake工具生成sln文件。如果cmake的过程中出错,可能是因为cmake路径或者代码路径中有中文,或者cmake没有用管理员打开。

2.       用文本编辑器打开./sql/sql_local.cc文件,将文件以utf-8格式保存,注意不要选择将文件转换为utf-8格式

3.       设置msqld工程为启动项

4.       编译msqld工程,注意不要全部编译所有工程,否则会出错,从错误信息看应该是和sql_local.cc文件一样的错误,碍于文件过多,没有进行更改

 利用该方式同样可以正确编译mysql代码

1.       右键mysqld工程,选择debug选项,在命令行中填入如下内容-?console

2.       Debug->start debugging即可

从代码启动需要一个数据库的安装路径,下载一个对应版本的安装包安装即可。可能存在兼容问题,所以最好是下载代码对应的版本

在安装mariadb前安装过mysql,并在windows的目录下创建了my.ini文件记录了mysqld的根目录和数据目录

安装好mariadb后,启动的时候总是报errmsg错误,并且文件路径指向原来安装mysql的路径,因为好久没弄mysql早就忘记了windows下my.ini的存在,所以各种找,就是找不到原因

最终细看mariadb的文档,发现系统启动的时候需要搜索my.ini文件,搜索顺序如下:

GetSystemWindowsDirectory()

GetWindowsDirectory()

C:\

Directory where the executable is located

于是一个一个的找,终于在windows目录下找到了这个文件,改正目录后重新启动mysqldb,启动成功

mysqld.exe --datadir=..\data --console

--console应该是命令行启动,不加的话应该会导致以服务方式启动,这样就看不到后台输出了

--datadir=..\data指定的应该是mysqld.exe的当前路径的前一个目录,如果这个目录下的data还没有初始化,则去掉就行,使用my.ini中定义的即可

因为在编译的时候改变了sql_local.cc的文件格式,导致启动的时候assert挂掉

这个应该是字符集的问题,与调试无关,注释掉挂掉的函数重试,可以启动,同时报错,不支持innodb存储引擎

查看vs工程,没有innodb工程,可能是innodb引擎没编进来,用cmake重新生成一下。

Innodb没有编进来的原因是我改了innodb下的makelist文件,当时是为了编译xtradb弄得,将这个文件改回去,重新用cmake生成就好了

然后重新打开工程,debug->start debugging 数据库启动成功 ^_^

mysql.exe连接数据库命令:mysql.exe ?uroot ?p

-uroot 表示以root用户登录 ?p表示使用密码

注:root用户和密码是在安装数据库的时候设置的

连接上后运行use test; 切换到test数据库,这个数据库也是在安装的时候建立的

然后就可以进行简单的建表插入操作了


推荐阅读
  • 本文介绍了一个免费的asp.net控件,该控件具备数据显示、录入、更新、删除等功能。它比datagrid更易用、更实用,同时具备多种功能,例如属性设置、数据排序、字段类型格式化显示、密码字段支持、图像字段上传和生成缩略图等。此外,它还提供了数据验证、日期选择器、数字选择器等功能,以及防止注入攻击、非本页提交和自动分页技术等安全性和性能优化功能。最后,该控件还支持字段值合计和数据导出功能。总之,该控件功能强大且免费,适用于asp.net开发。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • OCI连接MySQL_PLSQL Developer连接远程数据库OCI客户端安装方法
    本文介绍了使用OCI客户端连接MySQL和PLSQL Developer连接远程数据库的安装方法,避免了在本地安装Oracle数据库或类似的开发套件的麻烦,同时解决了PLSQL Dev连接远程Oracle时的配置问题。 ... [详细]
  • 数据库进入全新时代,腾讯云发布五大数据库提前布局
    8月28日,腾讯云数据库在京正式启动战略升级,宣布未来将聚焦云原生、自治、超融合三大战略方向,以用户为中心,联接未来。并在现场面向全球用户同步发布五大战略级新品,包括数据库智能管家 ... [详细]
  • MySQL/MariaDB/PerconaDB提权条件漏洞
    背景  2016年11月01日,国外安全研究员DawidGolunski在MyS ... [详细]
  • MySQL之left join表查询中发生字符集转换导致表索引失效
    mysql,之,left,join,表,查询,中,发生,字符,集,转换, ... [详细]
  • mysql数据库生成表插件_screw 数据库文档生成工具
    简洁好用的数据库表结构文档工具在企业级开发中、我们经常会有编写数据库表结构文档的时间付出,从业以来,待过几家企业,关于数据库表结构文档状态:要么没有、要么有、但都是手写 ... [详细]
  • 1、MySQL标志说明MySQL的海豚标志的名字叫“sakila”,它是由MySQLAB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由 ... [详细]
  • MySQL for OPS 08:MHA 高可用
    MySQL for OPS 08:MHA 高可用 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 如何部署Zabbix监控实现监测和报警机制
    这篇文章的知识点包括:Zabbix的安装部署、Zabbix监控的实现以及Zabbix报警机制的实现,阅读完整文相信大家对Zabbix监控的使用有了一定的认识。Zabb ... [详细]
author-avatar
许心怡917
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有