mysql選擇引擎的代碼,mysql常用的引擎

本文目錄一覽:

用mysql數據庫,怎麼選擇引擎?

1、使用show語句找出在服務器上當前存在什麼數據庫:

mysql

show

databases;

+———-+

|

database

|

+———-+

|

mysql

|

|

test

|

+———-+

3

rows

in

set

(0.00

sec)

2、創建一個數據庫abccs

mysql

create

database

abccs;

注意不同操作系統對大小寫的敏感。

3、選擇你所創建的數據庫

mysql

use

abccs

database

changed

此時你已經進入你剛才所建立的數據庫abccs.

4、

創建一個數據庫表

首先看現在你的數據庫中存在什麼表:

mysql

show

tables;

empty

set

(0.00

sec)

說明剛才建立的數據庫中還沒有數據庫表。下面來創建一個數據庫表mytable:

我們要建立一個你公司員工的生日表,表的內容包含員工姓名、性別、出生日期、出生城市。

mysql

create

table

mytable

(name

varchar(20),

sex

char(1),

birth

date,

birthaddr

varchar(20));

query

ok,

rows

affected

(0.00

sec)

由於name、birthadd的列值是變化的,因此選擇varchar,其長度不一定是20。可以選擇從1到255的任何長度,如果以後需要改變它的字長,可以使用alter

table語句。);性別只需一個字符就可以表示:”m”或”f”,因此選用char(1);birth列則使用date數據類型。

創建了一個表後,我們可以看看剛才做的結果,用show

tables顯示數據庫中有哪些表:

mysql

show

tables;

+———————+

|

tables

in

menagerie

|

+———————+

|

mytables

|

+———————+

5、顯示錶的結構:

mysql

describe

mytable;

+————-+————-+——+—–+———+——-+

|

field

|

type

|

null

|

key

|

default

|

extra

|

+————-+————-+——+—–+———+——-+

|

name

|

varchar(20)

|

yes

|

|

null

|

|

|

sex

|

char(1)

|

yes

|

|

null

|

|

|

birth

|

date

|

yes

|

|

null

|

|

|

deathaddr

|

varchar(20)

|

yes

|

|

null

|

|

+————-+————-+——+—–+———+——-+

4

rows

in

set

(0.00

sec)

6、

往表中加入記錄

我們先用select命令來查看錶中的數據:

mysql

select

*

from

mytable;

empty

set

(0.00

sec)

這說明剛才創建的表還沒有記錄。

加入一條新記錄:

mysql

insert

into

mytable

values

(′abccs′,′f′,′1977-07-07′,′china′);

query

ok,

1

row

affected

(0.05

sec)

再用上面的select命令看看發生了什麼變化。我們可以按此方法一條一條地將所有員工的記錄加入到表中。

如何選擇合適的MySQL存儲引擎

MyISAM:默認的MySQL 插件式存儲引擎。如果應用是以讀操作和插入操作為主,

只有很少的更新和刪除操作,並且對事務的完整性、並發性要求不是很高,那麼選擇這個存

儲引擎是非常適合的。MyISAM 是在Web、數據倉儲和其他應用環境下最常使用的存儲引擎

之一。

. InnoDB:用於事務處理應用程序,支持外鍵。如果應用對事務的完整性有比較高的

要求,在並發條件下要求數據的一致性,數據操作除了插入和查詢以外,還包括很多的更新、

刪除操作,那麼InnoDB 存儲引擎應該是比較合適的選擇。InnoDB 存儲引擎除了有效地降低

由於刪除和更新導致的鎖定,還可以確保事務的完整提交(Commit)和回滾(Rollback),

對於類似計費系統或者財務系統等對數據準確性要求比較高的系統,InnoDB 都是合適的選

擇。

MEMORY:將所有數據保存在RAM 中,在需要快速定位記錄和其他類似數據的環境

下,可提供極快的訪問。MEMORY 的缺陷是對錶的大小有限制,太大的表無法CACHE 在內

存中,其次是要確保表的數據可以恢復,數據庫異常終止後表中的數據是可以恢復的。

MEMORY 表通常用於更新不太頻繁的小表,用以快速得到訪問結果。

. MERGE:用於將一系列等同的MyISAM 表以邏輯方式組合在一起,並作為一個對象

引用它們。MERGE 表的優點在於可以突破對單個MyISAM 表大小的限制,並且通過將不同

的表分布在多個磁盤上,可以有效地改善MERGE 表的訪問效率。這對於諸如數據倉儲等VLDB

環境十分適合。

mysql5.5怎麼修改數據庫引擎

更改方式1:修改配置文件my.ini

將my-small.ini另存為my.ini,在[mysqld]最後添加為上default-storage-engine=InnoDB,重啟服務,數據庫默認的引擎修改為InnoDB

更改方式2:在建表的時候指定或者建完表修改

Mysql代碼 收藏代碼

–建表的時候指定

create table mytbl(

id int primary key,

name varchar(50)

)type=MyISAM;

–建完表後修改

alter table mytbl2 type = InnoDB;

–查看修改結果(mytest為表所在的database名字)

show table status from mytest;

如何選擇MySQL存儲引擎

MySQL有多種存儲引擎,每種存儲引擎有各自的優缺點,可以擇優選擇使用:

MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)、EXAMPLE、FEDERATED、ARCHIVE、CSV、BLACKHOLE。

MySQL支持數個存儲引擎作為對不同表的類型的處理器。MySQL存儲引擎包括處理事務安全表的引擎和處理非事務安全表的引擎:

· MyISAM管理非事務表。它提供高速存儲和檢索,以及全文搜索能力。MyISAM在所有MySQL配置里被支持,它是默認的存儲引擎,除非你配置MySQL默認使用另外一個引擎。

· MEMORY存儲引擎提供“內存中”表。MERGE存儲引擎允許集合將被處理同樣的MyISAM表作為一個單獨的表。就像MyISAM一樣,MEMORY和MERGE存儲引擎處理非事務表,這兩個引擎也都被默認包含在MySQL中。

注釋:MEMORY存儲引擎正式地被確定為HEAP引擎。

· InnoDB和BDB存儲引擎提供事務安全表。BDB被包含在為支持它的操作系統發布的MySQL-Max二進制分發版里。InnoDB也默認被包括在所 有MySQL 5.1二進制分發版里,你可以按照喜好通過配置MySQL來允許或禁止任一引擎。

· EXAMPLE存儲引擎是一個“存根”引擎,它不做什麼。你可以用這個引擎創建表,但沒有數據被存儲於其中或從其中檢索。這個引擎的目的是服務,在 MySQL源代碼中的一個例子,它演示說明如何開始編寫新存儲引擎。同樣,它的主要興趣是對開發者。

· NDB Cluster是被MySQL Cluster用來實現分割到多台計算機上的表的存儲引擎。它在MySQL-Max 5.1二進制分發版里提供。這個存儲引擎當前只被Linux, Solaris, 和Mac OS X 支持。在未來的MySQL分發版中,我們想要添加其它平台對這個引擎的支持,包括Windows。

· ARCHIVE存儲引擎被用來無索引地,非常小地覆蓋存儲的大量數據。

· CSV存儲引擎把數據以逗號分隔的格式存儲在文本文件中。

· BLACKHOLE存儲引擎接受但不存儲數據,並且檢索總是返回一個空集。

· FEDERATED存儲引擎把數據存在遠程數據庫中。在MySQL 5.1中,它只和MySQL一起工作,使用MySQL C Client API。在未來的分發版中,我們想要讓它使用其它驅動器或客戶端連接方法連接到另外的數據源。

比較常用的是MyISAM和InnoBD

如何更改mysql數據庫引擎

修改MySQL數據庫引擎步驟如下

第一:修改my.ini,在[mysqld]下加上:

default-storage-engine=引擎名稱

其中的等號後面是要指定的數據庫引擎名稱。

第二:用sql語句修改已經建成表的引擎:

alter

table

tableName

type=InnoDB

–type語法在4.X版本下存在

alter

table

tableName

ENGINE=InnoDB

–5.X下都改成engine=innodb

舉例說明下面貼出我的my.ini文件供參考:

[mysqld]

basedir=C:\Program

Files\VertrigoServ\Mysql\

datadir=C:\Program

Files\VertrigoServ\Mysql\data\

port

=3306

key_buffer

=64M

max_allowed_packet

=1M

table_cache

=128

sort_buffer_size

=512K

net_buffer_length

=8K

read_buffer_size

=256K

read_rnd_buffer_size

=512K

myisam_sort_buffer_size

=68M

default-storage-engine=INNODB

[mysqldump]

quick

max_allowed_packet

=116M

[mysql]

no-auto-rehash

#

Remove

the

next

comment

character

if

you

are

not

familiar

with

SQL

#safe-updates

[isamchk]

key_buffer

=20M

sort_buffer_size

=20M

read_buffer

=62M

write_buffer

=62M

[myisamchk]

key_buffer

=20M

sort_buffer_size

=20M

read_buffer

=62M

write_buffer

=62M

[mysqlhotcopy]

interactive-timeout

按照以上的代碼提示操作,我們就能夠成功地修改MySQL數據庫引擎為INNODB了。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/295751.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-27 12:57
下一篇 2024-12-27 12:57

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變量和數…

    編程 2025-04-29
  • Python 常用數據庫有哪些?

    在Python編程中,數據庫是不可或缺的一部分。隨着互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的數據庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在着手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • Java2D物理引擎簡介及應用

    本文將介紹Java2D物理引擎的基本概念、實現原理及應用案例,以及對應代碼示例。 一、物理引擎概述 物理引擎是一種計算機程序,用於模擬物理系統中的對象和其互動,如重力、碰撞、彈力等…

    編程 2025-04-29
  • Python實現簡易心形代碼

    在這個文章中,我們將會介紹如何用Python語言編寫一個非常簡單的代碼來生成一個心形圖案。我們將會從安裝Python開始介紹,逐步深入了解如何實現這一任務。 一、安裝Python …

    編程 2025-04-29

發表回復

登錄後才能評論