Windows 下 MariaDB (zip 免安装) 的手动安装与使用

介绍

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,10.0.9版起使用 XtraDB(名称代号为 Aria)来代替MySQL的 InnoDB

MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自麦克尔·维德纽斯的女儿玛丽亚(英语:Maria)的名字。

 

MariaDB直到5.5版本,均依照MySQL的版本。因此,使用MariaDB5.5的人会从MySQL 5.5中了解到MariaDB的所有功能。

从2012年11月12日起释出的10.0.0版开始,不再依照MySQL的版号。10.0.x版以5.5版为基础,加上移植自MySQL 5.6版的功能和自行开发的新功能。

版本原始发布日期最新版本发布日期状态
5.12009-10-29[5]5.1.672013-01-30[6]Stable (GA)
5.22010-04-10[7]5.2.142013-01-30[8]Stable (GA)
5.32011-07-26[9]5.3.122013-01-30[10]Stable (GA)
5.52012-02-25[11]5.5.482016-02-11[12]Stable (GA)
10.02012-11-12[13]10.0.242016-02-19[14]Stable (GA)
10.12014-06-30[15]10.1.132016-03-25[16]Stable (GA)
10.22016-04-18[17]10.2.62017-05-23[18]Stable (GA)
10.32017-04-16[19]10.3.02017-04-16[20]Alpha

格式:

旧版本

旧版本,仍被支持

当前版本

最新的预览版

 

包括 Google、Mozilla基金会、OpenBSD、Red Hat Enterprise Linux、维基媒体基金会等机构都已经加入到支持 MariaDB 的阵营。

 

以上信息来自维基百科 https://zh.wikipedia.org/zh-hans/MariaDB

 

下载

MariaDB http://mariadb.org  https://downloads.mariadb.org/

File NamePackage TypeOS / CPUSizeMeta
Galera 25.3.23 source and packages Source  

For best results with RPM and DEB packages, use the Repository Configuration Tool.

mariadb-10.3.9.tar.gzsource tar.gz fileSource72.2 MBChecksum 
Instructions
mariadb-10.3.9-winx64.zipZIP fileWindows x86_64200.3 MBChecksum 
Instructions
mariadb-10.3.9-winx64.msiMSI PackageWindows x86_6455.8 MBChecksum 
Instructions
mariadb-10.3.9-win32.msiMSI PackageWindows x8650.6 MBChecksum 
Instructions
mariadb-10.3.9-win32.zipZIP fileWindows x86163.0 MBChecksum 
Instructions
mariadb-10.3.9-linux-systemd-x86_64.tar.gz (for systems with systemd)gzipped tar fileLinux x86_64892.7 MBChecksum 
Instructions
mariadb-10.3.9-linux-glibc_214-x86_64.tar.gz (requires GLIBC_2.14+)gzipped tar fileLinux x86_64740.6 MBChecksum 
Instructions
mariadb-10.3.9-linux-x86_64.tar.gzgzipped tar fileLinux x86_64744.5 MBChecksum 
Instructions
mariadb-10.3.9-linux-glibc_214-i686.tar.gz (requires GLIBC_2.14+)gzipped tar fileLinux x86689.9 MBChecksum 
Instructions
mariadb-10.3.9-linux-i686.tar.gzgzipped tar fileLinux x86568.7 MBChecksum 
Instructions
mariadb-10.3.9-linux-systemd-i686.tar.gz (for systems with systemd)gzipped tar fileLinux x86736.9 MBChecksum 
Instructions
Debian and Ubuntu PackagesDEB PackageDebian/Ubuntu (x86, x86_64, ppc64el) Instructions

For best results with DEB packages, use the Repository Configuration Tool.

Red Hat, Fedora, and CentOS PackagesRPM PackageRedHat/CentOS/Fedora (x86, x86_64, ppc64, ppc64le) Instructions

For best results with RPM packages, use the Repository Configuration Tool.

如果不想安装,可以下载 mariadb-10.2.10-winx64.zip 免安装版,如果下载 MSI 版以下内容可以忽略。

 

解压到磁盘 D:\mariadb\10.2.10

 

安装服务

创建一个批处理  install.bat 用于将 MariaDB 安装为服务

::指定创建服务的程序
@set mysql_service="d:\mariadb\10.2.10\bin\mysqld.exe"
::设置服务名
@set service_name="MariaDB.10"

::开始安装Mariadb服务
%mysql_service% --install %service_name% --defaults-file="d:\mariadb\10.2.10\my-medium.ini"

pause

顺便再创建一个移除服务的批处理 uninstall.bat

@set mysql_service="d:\mariadb\10.2.10\bin\mysqld"
@set service_name="MariaDB.10"

:: 卸载服务
%mysql_service% --remove %service_name%

pause

d:\mariadb\10.2.10 目录内有几个 ini 文件,这里使用 my-medium.ini 作为服务端的配置,根据需求的不同,还可以选择 my-small.ini 轻量化配置,或者 my-large.ini 以强化性能。

批处理创建好以后,直接运行 install.bat,出现这个则表示安装成功。

进入 service 可以看到 MariaDB.10

单击运行,如果一切正常,则启动成功。

实际上,到此,都不必对 MariaDB 进行任何配置,Windows 就算安装成功了。

维护的话,目前和 MySQL 的 mysql.exe 维护命令完全一样。

默认密码为空,直接回车就行。

UTF8设置

MariaDB 所支持的字符集

 

CharsetDescriptionDefault collationMaxlen
big5Big5 Traditional Chinesebig5_chinese_ci2
dec8DEC West Europeandec8_swedish_ci1
cp850DOS West Europeancp850_general_ci1
hp8HP West Europeanhp8_english_ci1
koi8rKOI8-R Relcom Russiankoi8r_general_ci1
latin1cp1252 West Europeanlatin1_swedish_ci1
latin2ISO 8859-2 Central Europeanlatin2_general_ci1
swe77bit Swedishswe7_swedish_ci1
asciiUS ASCIIascii_general_ci1
ujisEUC-JP Japaneseujis_japanese_ci3
sjisShift-JIS Japanesesjis_japanese_ci2
hebrewISO 8859-8 Hebrewhebrew_general_ci1
tis620TIS620 Thaitis620_thai_ci1
euckrEUC-KR Koreaneuckr_korean_ci2
koi8uKOI8-U Ukrainiankoi8u_general_ci1
gb2312GB2312 Simplified Chinesegb2312_chinese_ci2
greekISO 8859-7 Greekgreek_general_ci1
cp1250Windows Central Europeancp1250_general_ci1
gbkGBK Simplified Chinesegbk_chinese_ci2
latin5ISO 8859-9 Turkishlatin5_turkish_ci1
armscii8ARMSCII-8 Armenianarmscii8_general_ci1
utf8UTF-8 Unicodeutf8_general_ci3
ucs2UCS-2 Unicodeucs2_general_ci2
cp866DOS Russiancp866_general_ci1
keybcs2DOS Kamenicky Czech-Slovakkeybcs2_general_ci1
macceMac Central Europeanmacce_general_ci1
macromanMac West Europeanmacroman_general_ci1
cp852DOS Central Europeancp852_general_ci1
latin7ISO 8859-13 Balticlatin7_general_ci1
utf8mb4UTF-8 Unicodeutf8mb4_general_ci4
cp1251Windows Cyrilliccp1251_general_ci1
utf16UTF-16 Unicodeutf16_general_ci4
utf16leUTF-16LE Unicodeutf16le_general_ci4
cp1256Windows Arabiccp1256_general_ci1
cp1257Windows Balticcp1257_general_ci1
utf32UTF-32 Unicodeutf32_general_ci4
binaryBinary pseudo charsetbinary1
geostd8GEOSTD8 Georgiangeostd8_general_ci1
cp932SJIS for Windows Japanesecp932_japanese_ci2
eucjpmsUJIS for Windows Japaneseeucjpms_japanese_ci3

 

没有配置 utf8mb4 前,默认是 gbk 和拉丁字符集,用 show variables like 'character%'; 命令查看。 

设置 utf8mb4,打开配置文件 my-medium.ini,找到下面相应的节点,添加相应的内容

[client]
default-character-set=utf8mb4

[mysqld]
character-set-client-handshake = false
character_set_server = utf8mb4
character_set_filesystem = binary
character_set_client = utf8mb4
collation_server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

[mysqldump]
character_set_client=utf8mb4

[mysql]
default-character-set=utf8mb4

保存后,重启 MariaDB 服务端,查看环境。

现在可以正确处理中文了。

这里要解释一下 utf8mb4 和 utf8 的区别,MySQL 或者 MariaDB 都支持 utf8,但早期的 utf8 为了在性能上取得平衡,其 utf8 只有 3 个字节,并非标准的 4 字节,如果继续使用 3 字节非标准的 utf8,那么移动设备上的很多符号将无法正常显示,且还会导致执行 SQL 时异常,所以新版本的 MySQL 和 MariaDB 引入新的编码格式 utf8mb4 真正支持标准的 UTF-8,幸好 utf8mb4 是 utf8 的超集,所以各位同学应该避免在 MariaDB 或者 MySQL 中 使用 utf8 而应该选择 utf8mb4 确保更高的兼容性。

表的大小写

向配置文件中添加以下其中一行,选择你的表明配置,这里这里的大小写仅仅是显示,查询是不区分。

 

# 不区分大小写

lower_case_table_names = 1

# 区分大小写

lower_case_table_names = 2

 

 

号维护

 

mysqladmin 命令
修改 root 的密码为 123456 则输入,之后会提示输入原密码,然后回车即可。
mysqladmin -u root -p password 123456

以 root 登录 mysql
# mysql -u root -p

允许 root 账号从 10.0.0.2 IP 访问,并设置密码为 123456
mysql>grant all privileges on *.* to 'root'@'10.0.0.2' identified by '123456' with grant option;   
mysql>flush privileges;

让 root 账号可以被远程访问,并设置密码 123456
mysql>grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
mysql>flush privileges;

修改密码方法 1,基本方法
mysql>set password =password('newpassword');
mysql>flush privileges;

修改 root 的 localhost 的密码方法, 2,使用 grant 语句 
mysql>grant all on *.* to 'root'@'localhost' identified by 'newpassword' with grant option;
mysql>flush privileges;

修改方法3
mysql>grant all on mysql.* to root@'%' identified by '123456';
mysql>flush privileges;
设置 root 密码为 123456;

 

 

https://blog.inull.net
Q群讨论 236201801

 

 

  • 2
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值