MySQL 常用操作集錦

2021-08-21 13:45:03 字數 2930 閱讀 9558

我發現(待考證)作為客戶機安裝 mysql-server 會沒有讓設定密碼的步驟,而在伺服器上安裝時會有。(據說是5.7版本以後都沒有設定密碼的不知)。

對於沒有讓設定密碼的情況,mysql在安裝過程中為root設定了乙個隨機的且失效的密碼。總而言之,只要你沒有密碼,就來一遍就對了。

1.1 安裝

# 安裝mysql服務

sudo apt-get install mysql-server

# 安裝客戶端

sudo apt install mysql-client

# 安裝依賴

sudo apt install libmysqlclient-dev

# 檢查狀態

sudo netstat -tap | grep mysql

# 如果報錯沒有找到命令 netstat,需要安裝 net-tools,然後在檢視狀態

sudo apt install net-tools

1.2 設定密碼

直接看流程記錄:

$ sudo su

$ mysql

mysql> select

user, plugin from mysql.user;

+------------------+-----------------------+

| user | plugin |

+------------------+-----------------------+

| root | auth_socket |

| mysql.session | mysql_native_password |

| mysql.sys | mysql_native_password |

| debian-sys-maint | mysql_native_password |

+------------------+-----------------------+

4 rows in set (0.00 sec)

# 這個是重要的一步

mysql> update mysql.user

set authentication_string=password('root'), plugin='mysql_native_password'

where

user='root';

mysql> flush privileges;

mysql> exit

bye# 重啟服務

$ sudo /etc/init.d/mysql restart

$ mysql -uroot -p

2.1 建立使用者:
# 先使用root登入

# 建立使用者

create

user

'dbusername'@'localhost' identified by

'password';

# 如果要建立乙個可以遠端訪問的使用者,可以將 localhost 更改為 % , 就像這樣

create

user

'dbusername'@'%' identified by

'password';

# 建立之後重新整理授狀態,新使用者就可以登入訪問了。

flush privileges;

2.2 建立新的使用者之後還需要給使用者分配乙個資料庫。

假設要建立乙個名稱為 dolphin 的資料庫

create

database dolphin default charset utf8

2.3 給新使用者分配資料庫
# 授予使用者通過 外網ip 對於該資料庫的全部許可權

grant

allprivileges

on`dolphin`.* to

'dbusername'@'%' identified by

'password';

# 授予使用者在 本地伺服器 對該資料庫的全部許可權

grant

allprivileges

on`dolphin`.* to

'dbusername'@'localhost' identified by

'password';

# 重新整理授狀態

flush privileges;

可以遠端方位的使用者在mysql.user表中,host欄位為 % 。 可以在建立賬戶時設定可以後期更改。

3.1 檢視 3306 埠

ubuntu@vm-15-131-ubuntu:~$ netstat -an | grep 3306

tcp6 0

0127.0

.0.1:3306

0.0.0

.0:* listen

如上顯示3306繫結本地埠

3.2 修改mysql配置檔案

開啟 /etc/mysql/mysql.conf.d/mysqld.cnf

vim /etc/mysql/mysql.conf.d/mysqld.cnf
注釋掉 bind-address

#bind-address            = 127.0.0.1
重啟mysql

/etc/init.d/mysql restart
急著睡覺,不說太多。

# 備份

mysqldump -h127.0

.0.1 -p3306 -uroot -p warehouse>warehouse.sql;

# 恢復

mysql -uroot -p warehouse睡覺睡覺~~~

mysql 語句 集錦 mysql常用語句集錦

mysql unix時間戳與日期的相互轉換 unix時間戳轉換為日期用函式 from unixtime select from unixtime 1156219870 日期轉換為unix時間戳用函式 unix timestamp select unix timestamp 2006 11 04 12...

Python set常用操作函式集錦

定義 set是乙個無序且不重複的元素集合。集合物件是一組無序排列的www.cppcns.com可雜湊的值,集合成員可以做字典中的鍵。集合支援用in和not in操作符檢查成員,由len 內建函式得到集合的基數 大小 用 for 迴圈迭代集合的成員。但是因為集合本身是無序的,不可以為集合建立索引或執行...

Mysql 常用SQL語句集錦

查詢時間,友好提示 乙個sql 返回多個總數 sql select count all,sql count case when status 1 then status end status 1 num,sql count case when status 2 then status end sta...