mysql基礎實例,mysql基礎實例教程

本文目錄一覽:

如何創建數據庫?

一、創建數據庫簡介

數據庫是儲存關鍵資料的文件系統,用數據庫管理系統建立大家的數據庫,就可以更好地提供安全性。如今伴隨着社會發展的迅速化趨勢,數據庫獲得了極大的運用,數據庫為前端和後台的程序都提供了數據和信息支持。因此,對於想管理好數據庫的你來說,必須明白怎樣建立數據庫,那麼如何建立呢?跟着本文一起來學習吧。

二、4種主流數據庫創建方式

2.1 MySQL創建數據庫

MySQL中創建數據庫的基礎英語的語法文件格式以下。

CREATE DATABASE db_name;

在其中“db_name”是即將創建的數據庫名字,該名字不可以與早已存有的數據庫同名。

實例:創建 MySQL 數據庫,名稱為 shulanxt:

CREATE DATABASE shulanxt;

按回車執行上述語句,即可創建名叫 shulanxt 的數據庫。

2.2 SQL Server創建數據庫

SQLServer創建數據庫的方式有兩種:

根據運作SQL腳本製作;

應用SQLServer管理方法模塊創建數據庫。

以下流程將展現怎麼使用SQLServer管理方法模塊在SQLServer2014創建數據庫。

在目標任務管理器中,右鍵單擊數據庫文件夾名稱/標誌,隨後挑選Newdatabase…:

開展數據庫取名,這裡叫“TaskTracker”,隨後點一下“OK”,即完成創建:

2.3 Oracle創建數據庫

2.3.1 創建新用戶並授與管理權限

最先,起動SQLplus程序的命令行:

sqlplus

如下所示:

注意:也可以從菜單欄的安裝文件直接開啟 SQLPlus。

當SQLPlus起動後,使用在安裝Oracle數據庫網絡服務器時鍵入的登陸密碼以sys用戶身份登陸

mysql基本語句詳細教程

看他們網上的,寫得都是千篇一律,同時,好多也寫得不是很好,下面是我自己總結的有關mysql的使用細節,也是我在學習過程中的一些記錄吧,希望對你有點幫助,後面有關存儲過程等相關操作還沒有總結好,下次總結好了再發給你吧,呵呵~~~~~

MySql學習筆記

MySql概述:MySql是一個種關聯數據庫管理系統,所謂關聯數據庫就是將數據保存在不同的表中,而不是將所有數據放在一個大的倉庫中。這樣就增加了速度與提高了靈活性。並且MySql軟件是一個開放源碼軟件。

注意,MySql所支持的TimeStamp的最大範圍的問題,在32位機器上,支持的取值範圍是年份最好不要超過2030年,然後如果在64位的機器上,年份可以達到2106年,而對於date、與datetime這兩種類型,則沒有關係,都可以表示到9999-12-31,所以這一點得注意下;還有,在安裝MySql的時候,我們一般都選擇Typical(典型安裝)就可以了,當然,如果還有其它用途的話,那最好選擇Complete(完全安裝);在安裝過程中,一般的還會讓你進行服務器類型的選擇,分別有三種服務器類型的選擇,(Developer(開發機)、Server Machine(服務器)、Dedicated MySql Server Machine(專用MYSQL服務器)),選擇哪種類型的服務器,只會對配置嚮導對內存等有影響,不然其它方面是沒有什麼影響的;所以,我們如果是開發者,選擇開發機就可以啦;然後接下來,還會有數據庫使用情況對話框的選擇,我們只要按照默認就可以啦;

連接與斷開服務器:

連接:在windows命令提示符下輸入類似如下命令集:mysql –h host –u user –p

例如,我在用的時候輸入的是:mysql –h localhost –u root –p

然後會提示要你輸入用戶密碼,這個時候,如果你有密碼的話,就輸入密碼敲回車,如果沒有密碼,直接敲回車,就可以進入到數據庫客戶端;連接遠程主機上的mysql,可以用下面的命令:mysql –h 159.0.45.1 –u root –p 123

斷開服務器:在進入客戶端後,你可以直接輸入quit然後回車就可以了;

下面就數據庫相關命令進行相關說明

你可以輸入以下命令對數據庫表格或者數據庫進行相關操作,在這裡就省略了,然後直接進行文字說明了;

Select version(),current_date;//從服務器得到當前mysql的版本號與當前日期

Select user(); //得到當前數據庫的所有用戶

Use databasename; 進入到指定的數據庫當中,然後就可以操作這個數據庫當中的表格了

Show databases; //查詢目前數據庫中所有的數據庫,並且顯示出來;

Create batabase databasename;創建數據庫,例如:create database manager;

Show tables; //查看當前數據庫中的所有表格;

Create table tablename(colums);創建表,並且給表指定相關列,例如:create table pet(name varchar(20),owner varchar(20),species varchar(20),sex char(1),birth date,death date);

Describe tablename;將表當中的所有信息詳細顯示出來,例如:describe pet;

可以用命令一次插入多條記錄,例如:

Insert into pet values(‘Puffball’,’Diane’,’hamster’,’f’,’1993-12-3’,null),( ‘Puffball’,’Diane’,’hamster’,’f’,’1993-12-3’,now());

Select * from pet; 從pet表當中查詢出所有的記錄,顯示出來;

Delete from pet where id=1;刪除ID為1的那一條記錄;

Update pet set birth=’2001-1-3’ where name=’Bowser’;更新name為Bowser的記錄當中的birth字段的值;

Select distinct owner from pet;從pet表中選擇出owner字段的值唯一的行,如果有多行記錄這個字段的值相同,則只顯示最後一次出現這一值的一行記錄;

有關日期計算:

Select name,birth,curdate(),(year(curdate())-year(birth)) as age from pet;

此處,year()函數用於提取對應字段的年份,當然類似的還有month(),day()等;

在mysql當中,sql語句可以使用like查詢,可以用”_”配任何單個字符,用”%”配任意數目字符,並且SQL模式默認是忽略大小寫,例如:select * from pet where name like ‘%fy’;

當然也可以用正則表達式模式進行配。

同時在sql當中,也要注意分組函數、排序函數、統計函數等相關用法,在這裡只列舉一二;

Select species,count(*) from pet group by speceis;

Select * from pet order by birth desc;

查詢最大值的相關操作:

Select max(age) from pet;

取前多少項記錄,這個主要用於分頁查詢操作當中,

Select * from pet order by birth desc limit 3;取前三條記錄,

Select * from pet order by birth desc limit 0,3;這個可以用於分頁查詢,limit後面的第一個參數,是起始位置,第二個參數是取記錄條數;

有關創建表格自增長字段的寫法:

Create table person(id int(4) not null auto_increment,name char(20) not null,primary key (id));

修改表操作:

向表中增加字段:注意,在這個地方,如果是增加多個字段的時候,就要用括號括起來,不然會有問題,如果是單個字段的話,不用括號也沒事;

Alter table test add(address varchar(50) not null default ‘xm’,email varchar(20) not null);

將表中某個字段的名字修改或者修改其對應的相關屬性的時候,要用change對其進行操作;

Alter table test change email email varchar(20) not null default ‘zz’;//不修改字段名

Alter table test change email Email varchar(30) not null;//修改字段名稱

刪除表中字段:

Alter table test drop email;//刪除單個字段

Alter table test drop address,drop email;//刪除多列

可以用Drop來取消主鍵與外鍵等,例如:

Alter table test drop foreign key fk_symbol;

刪除索引:

Drop index index_name on table_name;

例如:drop index t on test;

向表中插入記錄:注意,當插入表中的記錄並不是所有的字段的時候,應該要在前面列出字段名稱才行,不然會報錯;

Insert into test(name) values(‘ltx’);

Insert into test values(1,’ltx’);

也可以向表中同時插入多列值,如:

Insert into test(name) values(‘ltx’),(‘hhy’),(‘xf’);

刪除表中記錄:

Delete from test;//刪除表中所有記錄;

Delete from test where id=1;//刪除表中特定條件下的記錄;

當要從一個表或者多個表當中查詢出一些字段然後把這些字段又要插入到另一個表當中的時候,可以用insert …..select語法;

Insert into testt(name) (select name from test where id=4);

從文件中讀取行插入數據表中,可以用Load data infile語句;

Load data infile ‘test.txt’ into table test;

可以用Describe語法進行獲取有關列的信息;

Describe test;//可以查看test表的所有信息,包括對應列字段的數據類型等;

MySql事務處理相關語法;

開始一項新的事務:start transaction或者begin transaction

提交事務:commit

事務回滾:rollback

set autocommit true|false 語句可以禁用或啟用默認的autocommit模式,只可用於當前連接;

例子:

Start transaction;

Update person set name=’LJB’ where id=1;

Commit | rollback;

數據庫管理語句

修改用戶密碼:以root用戶為例,則可以寫成下面的;mysql –u root –p 舊密碼 –password 新密碼

Mysql –u root –password 123;//將root用戶的密碼修改成123,由於root用戶開始的時候,是沒有密碼的,所以-p舊密碼就省略了;

例如修改一個有密碼的用戶密碼:mysql –u ltx –p 123 –password 456;

增加一個用戶test1,密碼為abc,讓他可以在任何時候主機上登陸,並對所有數據庫有查詢、插入、修改、刪除的權限。

Grant select,insert,update,delete on *.* to test1@”%” identified by ‘abc’;

增加一個test2用戶,密碼為abc,讓他只可以在localhost上登陸,並且可以對數據庫進行查詢、插入、修改、刪除操作;

Grant select,insert,update,delete on mydb.* to test2@localhost identified by ‘abc’;

如果不想讓用戶test2有密碼,可以再輸入以下命令消掉密碼:

Grant select,insert,update,delete on mydb.* to test2@localhost identified by “”;

備份數據庫常用命令:mysqldump –h host –u username –p dbname保存路徑與文件名

然後回車後,會讓你輸入用戶密碼,輸入密碼後,再回車就OK啦;

Mysqldump –hlocalhost –uroot –p test E:\db\test.sql

這一命令具體解釋下:

這個命令就是備份test數據庫,並且將備份的內容存儲為test.sql文件,並且保存在E:\db下面;

命令當中-p 前面的test是數據庫名,然後在數據庫名後面要跟上一個””,然後接下來,就是寫要保存的位置與保存文件的文件名;

將備份好的數據庫導入到數據庫當中去:也就是運行.sql文件將數據庫導入數據庫當中去-

首先你得創建數據庫,然後運行如下命令:mysql –hlocalhost –uroot –p linuxE:\db\test.sql然後回車,再輸入密碼就可以啦;

解釋下上面的命令:linux是就要導入的數據庫名字,然後後面要緊跟着“”符號,然後後面就是要導入的數據庫文件;

將數據庫導出保存成XML文件、從XML文件導入數據到數據庫:

導出表中數據:mysql –X –h hostName –u userName –p Pwd –e “use DatabaseName;sql;” xml文件名

或者用另外一種方式也行:mysqldump –xml –h hostName –u userName –p pwd dbName tableName //這一種只用於顯示在當前的mysql客戶端,不保存到文件當中;

相關說明:-X代表的是文件的格式是XML,然後-e一寫不能掉,還有就是要用雙引號將要操作的語句括起來;單引號不行;

例如:mysql –X –hlocalhost –uroot –p –e “use test;select * from pet;”E:\db\out.xml

從XML文件導入數據到數據庫:

Insert into tableName values(1,load_file(‘filepath’));

例如:insert into pet values(1,load_file(“E:\db\out.xml”));

查看數據庫狀態與查詢進程:

Show status;//查看狀態

Show processlist;//查看進程

更改用戶名,用以下命令:

Update set user=”新名字” where user=”舊用戶名”;

給數據庫用戶設置管理員權限:

Mysqladmin –h host –u username –p pwd;

以root用戶為例;

Mysqladmin –h localhost –u root –p 123;

存儲過程與函數

存儲程序和函數分別是用create procedure和create function語句,一個程序要麼是一個程序要麼是一個函數,使用call語句來調用程序,並且程序只能用輸出變量傳回值;

要想在MySql5.1中創建子程序,必須具有create routine權限,並且alter routine和execute權限被自動授予它的創建者;

創建存儲過程:

首先聲明分隔符,所謂分隔符是指你通知mysql客戶端你已經輸入一個sql語句的字符或字符串符號,在這裡我們就以“//”為分隔符;

Delimiter 分隔符\

如:delimiter //

再創建存儲過程:

Create procedure 存儲過程名 ( )

聲明存儲過程開始:

begin

然後開始寫存儲過程體:

Select * from pet;

結束存儲過程:

End;//

剛剛的例子全部寫出來,完整的代碼就是:

Delimiter //

Create procedure spt () //注意,這個地方,存儲過程名與括號之間要有個空格

Begin

Select * from pet;

End;//到這裡,整個存儲過程就算寫完啦

執行存儲過程:

Call 存儲過程名 ();//

如,我們執行剛剛創建的存儲過程,就是:

Call spt ();//

需要說明的是存儲過程名後面一定要加個空格,而後面那個括號,則是用於傳送參數的參數列表;另外,我們創建存儲過程完成後,也只是創建了,但是只有調用call 存儲過程名 ();//後才算執行完畢,才能看到存儲過程的結果;

求《零基礎學PHP+MYSQL》全文免費下載百度網盤資源,謝謝~

《零基礎學PHP+MYSQL》百度網盤pdf最新全集下載:

鏈接:

?pwd=cp37 提取碼: cp37

簡介:《零基礎學PHP+MYSQL》從初學者角度出發,通過通俗易懂的語言、豐富的實例,詳細介紹丁使用PHP進行開發應該掌握的各方面技術。《零基礎學PHP+MYSQL》共19章內容,包括PHP的基礎知識和應用方法、PHP簡介、PHP的安裝和設置、PHP的語法、PHP常用函數說明、PHP簡單應用實例、PHP數據庫編程、Ajax、XML、正則表達式、PHP與MySQL綜合應用實例等。《零基礎學PHP+MYSQL》內容詳盡,實例豐富,非常適合作為編程初學者及中級讀者的學習用書,也可以作為開發人員的查閱、參考資料。讀者在學習初期會感覺非常容易,因為每個案例都是貼近實際應用,隨着學習的深入,讀者會喜歡上PHP,也會喜歡上這種講解方式。  

mysql 實例是什麼意思?

MySQL實例,實際上就是mysql.exe進程!啟動MySQL服務後,就會產生mysql.exe進程!

如何新建立一個mysql實例?

在原有實例下創建副本應該可以達到效果。

大多情況下,需要可靠而有效地克隆 MySQL 實例數據。這包括 MySQL 高可用的解決方案,其中需要在將實例加入組複製集群之前配置實例,或者在經典複製模型中將其添加為 Slave。

為複製拓撲而創建 MySQL 副本一直很麻煩。涉及的步驟很多,首先要備份 MySQL 服務器,通過網絡將備份傳輸到我們想要添加到複製集的新 MySQL 節點,然後在該節點上恢復備份並手動啟動 MySQL 服務器。為了高可用,最好還要將其正確設置備份的 GTID,並啟動並運行群集。涉及的手動步驟數量過多不利於高可用。CLONE 插件解決了這個問題並簡化了副本配置。使您可以使用 MySQL 客戶端(和 SQL 命令)來配置新節點並在發生時觀察克隆進度。無需手動處理多個步驟並維護自己的基礎架構來配置新的 MySQL 節點。

MySQL 8.0.17 引入了 CLONE SQL 語句,使當前的 MySQL 服務器成為另一個運行在不同節點的 MySQL 服務器的“克隆”。我們將執行 clone 語句的服務器實例稱為“受體”。克隆的源服務器實例稱為“供體”。供體克隆以一致的快照存儲在 InnoDB 存儲引擎中的所有數據和元數據,以替換受體中的數據。

成功執行 CLONE SQL 語句後,將自動重新啟動受體服務器。重新啟動涉及恢復克隆的快照數據,就像用老方法複製數據一樣。恢復完成後,受體就是供體的克隆版,隨時可以使用!

這裡有一些關於克隆過程的重要注意事項。

不克隆 MySQL 配置參數,並且受體保留所有原始配置參數,如克隆之前。這樣做是因為許多配置可能特定於節點(例如 PORT),因此保留它們似乎是一個不錯的選擇。另一方面,一些存儲配置確實需要在供體和受體之間匹配(例如 innodbpagesize),如果這樣的配置參數不匹配,CLONE 將報告錯誤。

CLONE 插件不會克隆二進制日誌。

CLONE 插件目前僅支持 InnoDB 存儲引擎。在其他存儲引擎(如 MyISAM 和 CSV)中創建的表將被克隆為空表。克隆基礎架構的設計允許克隆 MySQL 支持的任何存儲引擎。但是,只有 InnoDB 序列化和反序列化方法已經實現並經過測試。

克隆會阻止供體中的所有並發 DDL。

需要注意的事實是受體放棄所有數據以及任何二進制日誌,以便成為供體實例的克隆。在執行 CLONE 之前,如果認為有必要,需要備份當前受體數據。

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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-21 01:17
下一篇 2024-11-21 01:17

相關推薦

  • 如何修改mysql的端口號

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

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

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

    編程 2025-04-29
  • Python生成隨機數的應用和實例

    本文將向您介紹如何使用Python生成50個60到100之間的隨機數,並將列舉使用隨機數的幾個實際應用場景。 一、生成隨機數的代碼示例 import random # 生成50個6…

    編程 2025-04-29
  • 數據結構與算法基礎青島大學PPT解析

    本文將從多個方面對數據結構與算法基礎青島大學PPT進行詳細的闡述,包括數據類型、集合類型、排序算法、字符串匹配和動態規劃等內容。通過對這些內容的解析,讀者可以更好地了解數據結構與算…

    編程 2025-04-29
  • 樹莓派DIY無人機一:製作基礎

    本文將介紹如何使用樹莓派製作一個可飛行的小型無人機。本文將介紹樹莓派的選型、比例積木的使用、無線電通信以及如何控制飛行器的基本運動。 一、樹莓派的選型 在DIY無人機中,樹莓派是必…

    編程 2025-04-29
  • Python零基礎PDF下載

    本文將為大家介紹如何使用Python下載PDF文件,適合初學者上手實踐。 一、安裝必要的庫 在Python中,我們需要使用urllib和requests庫來獲取PDF文件的鏈接,並…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL數據庫 在使用Python操作MySQL之前,我們需要先連接MySQL數據庫。在Python中,我…

    編程 2025-04-29
  • Polyphone音頻編輯器基礎入門教程

    Polyphone是一款免費的音頻編輯器,可用於編輯.sf2和.sfz格式的音色庫。本文將詳細介紹Polyphone的基礎操作及使用方法。 一、安裝和簡介 首先,我們需要下載並安裝…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28

發表回復

登錄後才能評論