MySQL其实是一个跨平台的轻量级数据库,平时开发会用到很多。有写程序可能要跨平台开发,接下来我就介绍一下如何跨平台使用Mysql。

这里所谓的跨平台就是Windows,Linux,Mac共同用一套Mysql配置包括所有用户和数据库等等。

原理:其实很简单,就是配置的时候使用同一个文件夹存放即可。由此也可以知道,Mysql的安装文件和运行程序并不重要,备份的时候只要备份存放数据的文件夹即可,下次重装或换设配时,设置到这个目录即可。

下面是各个平台的安装教程:

安装前言:本教程中使用的都是zip版的安装方式,这样更加方便,跨平台更容易。

安装中所需要的配置文件信息,Windows下文件命名为My.ini,Mac和Linux下为My.cnf

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
basedir = *此处填写zip解压的Mysql目录,Windows下目录最好打引号如"D:\\MysqlData",Mac和Linux不需要引号,如/media/*/Mysql。下同*
datadir = *此处填写存放信息的目录,跨平台关键就在这里,要跨平台在这里填写不同平台下的同一个目录路径就行了,目录自己随意*
port = 3306
# server_id = .....
character_set_server=utf8

# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[client]
port=3306
default-character-set=utf8

一、Windows

1.my.ini的配置

修改
basedir = "D:\\Mysql"(解压的mysql目录)
datadir = "D:\\MysqlData"(Mysql信息和数据库的存放目录)

my.ini放到解压的mysql的目录下

2.环境的配置
#例如:环境变量设置, 新建变量名 MYSQL_HOME , 变量值为 MySQL 安装目录路径, 这里为D:\Mysql(安装路径);在环境变量的 Path 变量中添加 %MYSQL_HOME%\bin;

3.以管理员权限打开命令行,执行: mysqld --initialize --user=mysql --console,并记录下密码

4.执行安装服务命令: mysqld -install

5.执行启动服务命令: net start mysql

6.执行:mysql -u root -p

7.输入刚才的密码

8.执行改密码命令:set password = password('password');(加上最后的分号)

如果已经安装过mysql了,datadir中在其他平台上使用过这个目录了或者备份过来的目录,省去3和6~8。

二、Mac

1.my.cnf的配置

修改
basedir = /Volumes/*/Mysql (解压的mysql目录)
datadir = /Volumes/*/MysqlData (Mysql信息和数据库的存放目录)

复制my.cnf到/etc目录下,可在root权限或sudo下使用cp命令

2.配置环境变量

su
密码
nano /etc/profile
在文件后面添加
{
MYSQL_HOME="/Volumes/*/mysql"(mysql路径)
PATH=".:$PATH:$MYSQL_HOME/bin"
export MYSQL_HOME
}
保存退出
source /etc/profile

3.以管理员权限打开命令行,执行: mysqld --initialize --user=mysql --console,并记录下密码

4.执行安装服务命令: mysqld -install

5.执行启动服务命令: cd到相应的mysql目录执行./bin/mysqld_safe(不会开机自动启用Mysql服务,所以用到的时候需要启用,最好写一个sh执行文件)

6.执行:mysql -uroot -p

7.输入刚才的密码

8.执行改密码命令:set password = password('password');(加上最后的分号)

9.扩展:关闭MySql cd到相应的mysql目录执行mysqladmin -uroot -p shutdown

如果已经安装过mysql了,datadir中在其他平台上使用过这个目录了或者备份过来的目录,省去3和6~8。

三、Linux

1.my.cnf的配置

修改
basedir = /media/*/Mysql (解压的mysql目录)
datadir = /media/*/MysqlData (Mysql信息和数据库的存放目录)

复制my.cnf到/etc目录下,可在root权限或sudo下使用cp命令

2.配置环境变量

su
密码
sudo gedit ~/.bashrc
在文件后添加
{
export MYSQL_HOME=/media/qingyi/DevelopmentTools/Linux/mysql(mysql路径)
export PATH=${MYSQL_HOME}/bin:$PATH
}
保存退出
#source ~/.bashrc

3.以管理员权限打开命令行,执行: mysqld --initialize --user=mysql --console,并记录下密码

4.执行安装服务命令: mysqld -install

5.执行启动服务命令: cd到相应的mysql目录执行./bin/mysqld_safe

6.执行:mysql -uroot -p

7.输入刚才的密码

8.执行改密码命令:set password = password('password');(加上最后的分号)

9.扩展:关闭MySql cd到相应的mysql目录执行mysqladmin -uroot -p shutdown

如果已经安装过mysql了,datadir中在其他平台上使用过这个目录了或者备份过来的目录,省去3和6~8。

Mysql跨平台(Windows,Linux,Mac)使用与安装的更多相关文章

  1. 手把手教你Windows Linux双系统的安装与卸载

    作者:-叶丶知秋 链接:https://blog.csdn.net/fanxueya1322/article/details/90205143 转载请保留出处 良许前言: 后台突然有很多小伙伴留言想看 ...

  2. MySQL For Windows Zip解压版安装

    前言 Windows 下 MySQL 有msi和zip解压安装版两种,而zip版只需解压并做简单配置后就能使用,我个人比较喜欢这种方式. 注意我们这里说的MySQL是指MySQL服务器,有很多初学的同 ...

  3. Windows和Mac系统下安装Docker

    在windows和mac系统中使用Docker Desktop安装Docker对系统的要求是很高的. 对于 Windows 系统来说,安装 Docker for Windows 需要符合以下条件: 必 ...

  4. IDA Pro Disassembler 6.8.15.413 (Windows, Linux, Mac)

    IDA: What's new in 6.8 Highlights This is mainly a maintenance release, so our focus was on fixing b ...

  5. windows/Linux/Mac下安装maven,maven作用

    Linux下安装maven 1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.3.9-bin.tar.gz,下载可以使用wget命令: 2.进入下 ...

  6. Maven的安装文字版(Windows/Linux/Mac)

    以下内容引用自https://ayayui.gitbooks.io/tutorialspoint-maven/content/book/maven_environment_setup.html,安装信 ...

  7. pip 直接安装tar.gz zip文件包 (windows linux mac 可用)

    在不能连接外网的机器上安装python的各种包,解压安装要人工输入多条命令: tar -zxvf Flask-WTF-0.10.0.tar.gz cd Flask-WTF-0.10.0 python ...

  8. Windows/Linux/Mac下安装mvn

    Step1: 去官网地址下载 http://maven.apache.org/download.cgi Step2: 解压并且移动到指定到目录下 Step3: 配置环境变量并使之生效 .bash_pr ...

  9. pycharm2020.2破解版教程激活码支持Windows Linux Mac系统-中关村老大爷

    听说很多朋友想要PyCharm专业版2020.2的破解教程.现在来了,亲测破解成功.支持mac linux windows系统.本教程提供官方安装包.激活码和注册补丁. 本教程仅供学习和讨论,禁止商业 ...

随机推荐

  1. 《TCP/IP详解卷1:协议》第17、18章 TCP:传输控制协议(1)-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  2. Bootstrap3.0学习第十七轮(JavaScript插件——模态框)

    详情请查看http://aehyok.com/Blog/Detail/24.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...

  3. Bootstrap3.0学习第十四轮(分页、徽章)

    详情请查看http://aehyok.com/Blog/Detail/21.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本文文章链接:ht ...

  4. 转-JS子窗口创建父窗口操作父窗口

    Javascript弹出子窗口  可以通过多种方式实现,下面介绍几种方法 (1) 通过window对象的open()方法,open()方法将会产生一个新的window窗口对象 其用法为: window ...

  5. Java中唯一数的生成

    唯一数的生成很简单,基本上以时间为基础进行生成.在JDK里面已经有java.util.UUID类可以生成唯一的随机数.如果希望生成的唯一数为特定的格式,那么就需要自己来生成唯一数了.生成唯一数时有两个 ...

  6. java操作mysql中的编码问题解决

    要注意以下几点 1.在连接mysql数据库时 jdbc:mysql://localhost:3306/xiaonei?useUnicode=true&characterEncoding=utf ...

  7. iOS边练边学--多线程练习的多图片下载 以及 使用第三方框架(SDWebImage)的多图片下载

    一.自己实现多图片下载应该注意的问题 沙盒缓存的问题 程序缓存的问题 cell重复利用显示图片混乱的问题 -- 用户拖拽快,下载图片慢导致的 解决图片混乱引入NSOperation集合的问题 资源下载 ...

  8. chrom_input_click

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  9. 【bzoj1037】 ZJOI2008—生日聚会Party

    http://www.lydsy.com/JudgeOnline/problem.php?id=1037 (题目链接) 题意 有n个boy和m个girl排成一排,求使得任意一段的boy个数girl个数 ...

  10. C++标准转换运算符reinterpret_cast

    C++标准转换运算符reinterpret_cast reinterpret_cast <new_type> (expression) reinterpret_cast运算符是用来处理无关 ...