當前位置:首頁 » 存儲配置 » mysqlip地址存儲

mysqlip地址存儲

發布時間: 2022-06-30 21:33:22

⑴ Mysql如何有效的存儲IP地址及字元串IP和數

以下的文章主要介紹的是如何用MySQL內置函數來轉換ip地址與相關數字,在實際操作中在處理字元格式的時候,例如將54789轉換為5,4789這樣的,我們只要用:format(12345,0)即可,以下就是具體內容介紹。

用MySQL內置函數轉換ip地址和數字

利用兩個內置函數

inet_aton:將ip地址轉換成數字型

inet_ntoa:將數字型轉換成ip地址

充分利用mysql內置的format函數

尤其是在處理字元格式的時候,例如將12345轉換成12,345這樣的,只要用:format(12345,0)即可,如果用format(12345,2)則顯示的是12,345.00了...

利用MySQL內置函數處理時間戳問題

eg : select FROM_UnixTIME(UNIX_TIMESTAMP(),'%Y %D %M %h:%i:%s %x');
結果: 2004 3rd August 03:35:48 2004

利用mysql_convert_table_format轉換表類型

需要DBI和DBD的mysql相關模塊支持才能用,例子:

mysql_convert_table_format --user=root --password='xx' --type=myisam test yejr
修改mysql表中的欄位名

alter table tb_name change old_col new_col definition...
利用臨時變數

select @var1:=a1+a2 as a_sum,@var2:=b1+b2 as b_sum,@var1+@var2 as total_sum from test_table xxx;
用int類型存儲ip地址

原先錯誤的認為必須用bigint才夠,後來發現使用int unsigned類型就足夠了。 :)

利用IF函數快速修改ENUM欄位值

一個例子:

update rule set enable = if('0' = enable,'1','0') where xxx;
enable 類型:enum('0','1') not null default '0'

事務無法嵌套

避免長時間的sleep連接造成的連接數超出問題

設定全局變數 wait_timeout 和 interactive_timeout 為比較小的值,例如

10(s),就能使每個sleep連接在10s之後如果還沒有查詢的話自動斷開。

設定mysql內置函數客戶端的提示符(prompt)

export MYSQL_PS1="(\u:\h:)\d> "
則用 mysql -hlocalhost -uroot -pxx db_name 登錄後,提示符變成:

(root:localhost:)db_name>
好用吧 :), 時時刻刻提醒你在哪個伺服器上,盡量避免誤操作的發生

更詳細的請查看MySQL手冊

整理MyISAM碎片

1.) 定期運行 OPTIMIZE TABLE 命令即可

2.) 用mysqlmp出數據,然後重新import回去,這對大表來說顯然第一種方法比較方便

整理Innodb碎片

1.) 運行NULL命令, ALTER TABLE XXX ENGINE=Innodb;

2.) 同上的mysqlmp方法

MySQL如果認為檢索的記錄數量超過總記錄數的30%,則選擇全表掃描,而非使用索引

MySQL 5.0.3之後,VARCHAR欄位後面的空格就不再刪除

升級到4.1.1或更高後,就很難降級回到4.0或4.1了,因為 InnoDB 使用了多個表空間的緣故

MySQL 4.1之後,MySQL把字元串類型欄位的長度定義理解為字元長度而不是位元組長度

MySQL 4.1=>5.0時,增加了一個新的啟動選項 innodb_table_locks,它導致 LOCK TABLE 時也可以請求 InnoDB

表鎖。這個選項默認打開,不過可能在 AUTOCOMMIT=1 和 LOCK TABLES 應用中會導致死鎖

5.0.3開始,在計算 DECIMAL 值和舍入精確值的時候採用精確數學,DECIMAL 用更有效的格式來存儲

從5.0.12開始,自然連接和使用 USING

的連接,包括外部連接的衍生形式,都按照SQL:2003標准來處理了;這個變化導致減少了自然連接和使用 USING

的連接產生的結果欄位數,並且還將按照更合理的順序顯示這些欄位,逗號比較符的優先順序和 JOIN, LEFT JOIN 中的一樣了

在以前,等待超時的鎖會導致 InnoDB 回滾當前全部事務,從5.0.13開始,就只回滾最近的SQL語句了

InnoDB 和 MyISAM 表中空格結尾的 TEXT 欄位索引順序改變了。因此需要運行 "CHECK TABLE" 語句修復數據表,如果出現錯誤,就運行

"OPTIMIZE TABLE" 或 "REPAIR TABLE" 語句修復,甚至重新轉儲(用mysqlmp)

MySQL 5.0.3到5.0.5之間版本的 MyISAM 和 InnoDB 表中創建的 DECIMAL 欄位升級到5.0.6之後會發生崩潰。

以上的相關內容就是對用MySQL內置函數轉換ip地址和數字的介紹,望你能有所收獲。

⑵ 請問怎麼用php來實現去獲取某個用戶的ip然後存到自己的資料庫mysql中,給代碼參考看看,謝謝

1.改表法。可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那台電腦,登入mysql後,更改
"mysql"
資料庫中
"user"
表裡的
"host"
欄位,把"localhost"改稱"%",即可。
mysql
-u
root
-pvmwaremysql>use
mysql;mysql>update
user
set
host
=
'%'
where
user
=
'root';mysql>select
host,
user
from
user;
2.授權法。例如,你想用戶myuser使用密碼mypassword通過ip地址連接到mysql伺服器,使用:
grant
all
privileges
on
*.*
to
'myuser'@'%'
identified
by
'mypassword'
with
grant
option;
如果你想允許用戶myuser從ip為192.168.1.3的主機連接到mysql伺服器,並使用mypassword作為密碼
grant
all
privileges
on
*.*
to
'myuser'@'192.168.1.3'
identified
by
'mypassword'
with
grant
option;

⑶ mysql ip欄位是varbinary(4) php如何向里存放數據

IP欄位一般使用INT存儲,銷量比較高。畢竟MySQL提供了IP地址轉換函數。
inet_aton:將ip地址轉換成數字型 inet_ntoa:將數字型轉換成ip地址

⑷ 資料庫中怎麼存儲IP地址

access中記錄用戶ip的方法:
'獲取訪問者的IP
ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
set rs=server.CreateObject("adodb.recordset")
sql = "select * from xiaoyewl_yzm where yzip='"&ip&"' and DATEDIFF('d',now(),sj)=0" '先查詢資料庫里有沒有
rs.open sql,conn,3,2
if rs.eof or rs.bof then '資料庫無當天IP則寫入
rs.addnew

now_time = now '獲取登陸時間(伺服器時間)
rs("yzip") = ""&ip&""
rs("yzcs") = 1
rs("sj") = now_time
rs.update
end if
rs.close

⑸ mysql ip 存儲成什麼類型

字元串char(15)。

discuz作為最大的開源BBS系統,也使用的該類型。

⑹ 在MySQL中想要創建一個含有IP地址類型的表,但是不知道IP地址數據類型是什麼如何創建,答者可以給我截

大哥,你語法都錯了
insert into table_name values(),(),();
一般mysql存儲ip用int型,int(10);
inet_aton(ip)函數可以把ip欄位轉換為對應的整數存儲
INET_NTOA可以把整數轉換成ip欄位

⑺ IP地址存儲在mysql中用什麼欄位

用char()類型,因為IP地址基本定長,如114.114.114.114,為15個字元,最少也是如8.8.8.8,為7個字元,但非常少用這樣的IP,一般過都是12-15個字元長度,用varchar()變長類型的話會因此減慢資料庫速度

⑻ MySQL存放IP地址 用數值型有什麼好處

大哥,你語法都錯了 insert into table_name values(),(),(); 一般mysql存儲ip用int型,int(10); inet_aton(ip)函數可以把ip欄位轉換為對應的整數存儲 INET_NTOA可以把整數轉換成ip欄位

⑼ 【已解決】MYSQL的IP地址在那裡看

我的godaddy
空間MySQL
資料庫
就是連接不上
謝謝謝謝你了
可以么
都好幾天了
謝謝了資料庫連接失敗,可能是資料庫伺服器地址、賬號或密碼錯誤地址
就是那個一串啊
Database
Name
和User
Name
是一樣的啊
密碼試過了
餓能進入那個phpadmin
管理界面
就是不知道哪裡錯了
網上說填寫
ip
我進入管理界面看到了ip
但是填寫也不對啊
我又寫了埠號3306
但是還是不對

熱點內容
谷能壓縮機 發布:2025-01-13 15:44:30 瀏覽:412
電腦電腦直連通訊ftp 發布:2025-01-13 15:38:03 瀏覽:717
nvm存儲 發布:2025-01-13 15:36:19 瀏覽:552
京東架構師緩存經驗 發布:2025-01-13 15:33:00 瀏覽:726
android圖片顏色 發布:2025-01-13 15:26:09 瀏覽:268
國家稅務總局電腦伺服器 發布:2025-01-13 15:10:24 瀏覽:596
金立老款機的開機密碼是多少 發布:2025-01-13 15:04:45 瀏覽:456
湖南網上辦稅初始密碼多少 發布:2025-01-13 15:02:49 瀏覽:417
怎麼使用筆記本連接伺服器 發布:2025-01-13 15:02:48 瀏覽:705
長城cs75plus選哪個配置 發布:2025-01-13 14:54:05 瀏覽:22