mysql 數據庫常用命令

find /hxdata/hqserver/history/shase/ -name "609*.*" |xargs  rm  -rf    (刪除找到的內容)


sqlserver  查表結構

sp_columns wt_login_transmid

sp_help wt_login_transmid



查詢:最後兩條數據  select * from  y1  order by id  desc  limit 2;   (最後一條編號是0,可以省略不寫)

          查詢倒數第二條和第三條數據  select  *  from y1   order by id desc limit 1,2;

        

         查詢最前面10條數據 select * from  y1 limit  10

         查詢第二條到第五條信息  select  * from y1  limit 1,5(第一條是0,默認不寫是0)

order by +字段+desc/    降序/升序

select * from y1 order by age desc  --降序排序

select * from y1 order by age  --默認就是升序排序

--top

--查詢數學成績最高的5名

select top 5 * from y1 order by CJ desc

--獲取數學成績最低的5名

select top 5 * from y1 order by CJ 

插入數據: inster   into   y1   values("carry","12","girl");

更改表名:  alter   table   y1  rename to  yyy1;

添加字段:alter   table  yyy1  add  weight  int(11);

添加字段到第一列:  alter   table   yyy1   add   money   int(11) not null first;

更改字段:alter  table yyy1  change  weight   line int(11);

刪除字段:alter   table   yyy1  drop line;

修改數據:update   yyy1 set   money="22200" where age=7;

修改數據:update  yyy1   set   age=100   where   money="22200";

   



mysql遠程別的服務器電腦:mysql -uroot -h198.28.0.83 -phtzq10jqka


utf8能夠存下大部分中文漢字,那爲什麼還要使用utf8mb4呢? 因爲 utf8 編碼最大字符長度爲 3 字節,如果遇到 4 字節的寬字符就會插入異常了

保存 4 字節長度的 UTF-8 字符,需要使用 utf8mb4 字符集,但只有 5.5.3 版本以後的才支持(查看版本: select version();  )


1)mysql的數據格式是utf8mb4,數據庫cms_pro也要支持

 (可以參照http://www1350.github.io/#post/34)

步驟1:配置文件my.cnf修改 (在下面三處添加下面內容)

[client]

default-character-set = utf8mb4


[mysql]

default-character-set = utf8mb4


[mysqld]

character-set-client-handshake = FALSE

character-set-server = utf8mb4

collation-server = utf8mb4_unicode_ci

init_connect='SET MAMES utf8mb4'


步驟2:在mysql中執行

set character_set_client = utf8mb4;

set character_set_connection = utf8mb4;

set character_set_database = utf8mb4;

set character_set_results = utf8mb4;

set character_set_server = utf8mb4;

步驟3:修改database字符集 mysql中執行

alter database cms_pro character set = utf8mb4 collate = utf8mb4_unicode_ci;

查看是否修改成功 : show variables where variable_name like 'character\_set\_%' or variable_name like 'collation%';


2)mysql數據庫的表明及字段名稱不區分大寫  

         步驟:配置文件my.cnf

  [mysqld]

lower_case_table_names=1


3)mysql設置group_concat_max_len(在配置文件中添group_concat_max_len = 1024000) 之後重啓。

步驟:在配置文件my.cnf

[mysqld]

  group_concat_max_len = 1024000



在mysql中  創建一個student庫 並設置字符集:utf8 -- UTF-8 Unicode,排序規則:utf8_general_ci   

mysql> create database if not exists student default charset utf8 collate utf8_general_ci;


mysqkl>create database oms_db DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;


一、避免創建數據庫及表出現中文亂碼和查看編碼方法 1、創建數據庫的時候:CREATE DATABASE `test` CHARACTER SET 'utf8' COLLATE 'utf8_general_ci'; 2、建表的時候 CREATE TABLE `database_user` ( `ID` varchar(40) NOT NULL default '', `UserID` varchar(40) NOT NULL default '', ) ENGINE=InnoDB DEFAULT CHARSET=utf8;




導入:

導入sql腳本 自動創建所需的表。

mysql> use cbas_orige

Database changed

mysql> source /root/dbtables.sql;

導入整個數據庫:先建一個空數據庫,mysql>create database abc; 選擇數據庫mysql>use abc;
設置數據庫編碼mysql>set names utf8;導入數據(注意sql文件的路徑)mysql>source /home/abc/abc.sql;


導入數據庫/表

mysql -u用戶名 -p密碼 數據庫名 < 數據庫名.sql        mysql -uroot -p abc < abc.sql



導出:

導出庫/表包含內容:mysqldump  -uroot -p  cms_pro t_product_fund >t_product_fund.sql   (一般庫和表使用空格或點隔開,如果是整個庫 就不需要接後面的表)

導出表結構:mysqldump -uroot -p -d  cms_pro t_product_fund >t_product_fund.sql (導出的是表結構)




MYSQL:授權


grant all privileges  on *.*  to  root@"198.28.1.19" identified by "htzq10jqka";


mysql>grant privileges all *.* root@"%" identified by "123456";

mysql>flush privileges;

MySQL:改密碼

mysql>update mysql.user set passowrd=password("10jqka") where user="root" and host="%";

mysql>flush privileges;


讓MYSQL不區分表名大小寫的方法其實很簡單:

1.用ROOT登錄,修改/etc/my.cnf

2.在[mysqld]下加入一行:lower_case_table_names=1

3.重新啓動數據庫即可

 

[root@chicago init.d]# vi /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
lower_case_table_names=1

 



MySQL:

如果將A庫中t1表內容複製到B庫中t2表,insert into B.t2 select * from A.t1; 前提是要先創建一個t2表,且表結構要和t1一樣,創建完後就可以用這sql語句導入。



使一個庫下所有表可以插入中文

在mysql中 我創建一個student庫 並 設置字符集:utf8 -- UTF-8 Unicode,排序規則:utf8_general_ci   

語句怎樣的 

mysql> create database if not exists student default charset utf8 collate utf8_general_ci;



mysql 初始化數據庫 

# mysql_install_db  --user=mysql -datadir=/var/lib/mysql



查看建表過程

show  create  table  表名;




#msyql -uroot -p123456 mysql -e "show tables" |head


mysql>purge master logs before date_sub(current_date,interval 1 day);清理binlog(二進制)日誌,只保留最近一天數據,這樣是爲了十分磁盤空間,如果數據太多這樣也不行就只能考慮數據遷移了。


查看從是否有問題:

mysql> show slave status \G;





設置數據庫插入中文字符集:

mysql> show variables like 'character%';

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

| Variable_name            | Value                            |

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

| character_set_client     | latin1                           |

| character_set_connection | latin1                           |

| character_set_database   | utf8                             |

| character_set_filesystem | binary                           |

| character_set_results    | latin1                           |

| character_set_server     | utf8                             |

| character_set_system     | utf8                             |

| character_sets_dir       | /usr/local/mysql/share/charsets/ |




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章