一、下載、安裝
1、下載mariadb(https://downloads.mariadb.org/),解壓
2、進入bin目錄下執行(管理員模型-powershell)
.\mysqld.exe --install mariadb
顯示:
Service successfully installed.
成功
3、執行
net start mariadb
顯示:
mariadb 服務正在啟動 ...
mariadb 服務無法啟動。
系統出錯。
發生系統錯誤 1067。
進程意外終止。
4、加參數再次執行
.\mysql_install_db --user=mysql -d D:\develop\mariadb-10.4.7-winx64\data
顯示:
D:\develop\mariadb-10.4.7-winx64\bin\mysql_install_db.exe: unknown variable 'user=mysql'
5、去除user=mysql,再次執行
.\mysql_install_db -d D:\develop\mariadb-10.4.7-winx64\data
顯示:
Running bootstrap
2019-08-15 21:37:52 0 [Note] D:\develop\mariadb-10.4.7-winx64\bin\mysqld.exe (mysqld 10.4.7-MariaDB) starting as process 6240 ...
Removing default user
Creating my.ini file
Creation of the database was successful
成功
二、啟動、修改編碼
6、啟動服務
net start mariadb
net stop mariadb --關閉
7、登錄數據庫
.\mysql.exe -uroot
8、查看編碼
show variables like 'character%';
顯示:
+--------------------------+--------------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | D:\develop\mariadb-10.4.7-winx64\share\charsets\ |
+--------------------------+--------------------------------------------------+
9、修改編碼為utf8
set character_set_client=utf8; set character_set_connection=utf8; set character_set_database=utf8; set character_set_results=utf8; set character_set_server=utf8;
10、查看編碼修改結果
執行:
show variables like 'character%';
顯示:
+--------------------------+--------------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | D:\develop\mariadb-10.4.7-winx64\share\charsets\ |
+--------------------------+--------------------------------------------------+
三、建庫、建用戶、加權限
11、建庫simple
create database simple default charset utf8 collate utf8_general_ci;
12、創建用戶simple
create user 'simple'@'localhost' identified by '123456';
創建localhost登錄的用戶simple,密碼是123456
13、賦予權限
grant all on simple.* to 'simple'@'localhost' with grant option;
將庫simple的所有權限賦予用戶simple,且有操作的權限。
14、登錄驗證
mysql -usimple -p123456
四、發現編碼問題,修改
15、修改之后,重啟登錄,發現編碼還原了
網上搜索,說上面的設置是臨時的,需要加global設置。
set global character_set_client=utf8;
一番操作之后,發現還是不起作用。
16、嘗試修改配置文件來解決
再次搜索,有教改配置文件的,win10的是my.ini
D:\develop\mariadb-10.4.7-winx64\data\my.ini
修改如下:
[mysqld] character_set_server = utf8 datadir=D:/develop/mariadb-10.4.7-winx64/data [mysql] default-character-set = utf8 [mysql.server] default-character-set = utf8 [client] default-character-set = utf8 plugin-dir=D:/develop/mariadb-10.4.7-winx64/lib/plugin
17、修改之后,發現還是不行,刪庫,重新建,刪表,重新建,還是不行。
變化的是之前的?變成亂碼了。
網上搜了一個遍,沒有思路。因為我是通過powershell連接的,心想,裝個navicat看看吧,到底啥原因。
裝了之后,發現很正常,沒有亂碼,於是矛頭指向了powershell。
18、修改powershell亂碼
參考:https://blog.csdn.net/weixin_43426860/article/details/83348284
控制面板-區域-管理-更改系統區域設置,勾選使用utf-8。
重啟之后,顯示正常。