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. 如何在Mvc 6 中创建 Web Api以及如何脱离IIS实现自我托管

    微软推出的Asp.net vNext(asp.net 5.0)的其中的一个目标就是统一mvc 和web api 的框架.接下来我就演示一下一下几个内容 1,怎么在Asp.net mvc 6 中创建简单 ...

  2. servlet请求转发、包含以及重定向

    请求转发: 方式一: ServletContext对象.getRequestDispatcher(目标资源的URI).forward(request,response); 目标资源的URI " ...

  3. 文件夹文件遍历并插入数据库的操作,IO Directory File的递归操作

    在我们管理内容管理系统时,数据量大时,对机器的依赖性就比较强了,比如,我要将一个文件夹中的很多图片上传到网站,一个个上传会很花时间,就想到了通过遍历文件夹得到文件名,并将路径与文件保存到数据库中对应的 ...

  4. Lambda表达式和表达式树

    在C# 2.0中,通过方法组转换和匿名方法,使委托的实现得到了极大的简化.但是,匿名方法仍然有些臃肿,而且当代码中充满了匿名方法的时候,可读性可能就会受到影响.C# 3.0中出现的Lambda表达式在 ...

  5. PHP使用DateTime类做时间日期到字符串转换

    PHP关于时间日期的处理不是很规范,简单就简单了,就是不知道输入的字符串是否能够正确转化为需要的DateTime类型. 面向对象的PHP应该使用DateTime类来做string和dateTime的转 ...

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

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

  7. hdu2923 最短路floyd

    建图还是有点烦人的. #include<map> #include<string> #include<stdio.h> #include<iostream&g ...

  8. Svn-如何清除eclipse中保存的svn用户名和密码

    1. 查看你的Eclipse中使用的是什么SVN Interface windows > prefeSence > Team > SVN #SVN Interface 2. 如果是用 ...

  9. sql-in和not in

    IN .NOT IN这个指令可以让我们依照一或数个不连续 (discrete) 的值的限制之内抓出数据库中的值 in和not in in:存在与...里面的 not in:不存在与..里面的 其指令语 ...

  10. 【Gym 100015B】Ball Painting

    题 There are 2N white balls on a table in two rows, making a nice 2-by-N rectangle. Jon has a big pai ...