標籤:des style 使用 os strong 檔案
安裝mysqlyum -y install mysql-server
- 修改mysql配置
vi /etc/my.cnf 這裡會有很多需要注意的配置項,後面會有專門的筆記
暫時修改一下編碼(添加在密碼下方): default-character-set = utf8
- 設定mysql隨系統啟動
# chkconfig mysqld on ← 設定MySQL服務隨系統啟動自啟動
# chkconfig --list mysqld ← 確認MySQL自啟動mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← 如果2--5為on的狀態就OK
# /etc/rc.d/init.d/mysqld start ← 啟動MySQL服務
- 顯示當前mysql版本和當前日期
select version(),current_date;
- 修改mysql root密碼
# mysql -u root ← 用root使用者登入MySQL伺服器
select user,host,password from mysql.user; ← 查看使用者資訊
set password for [email protected]=password(‘在這裡填入root密碼‘); ← 設定root密碼
select user,host,password from mysql.user; ← 查看使用者資訊
exit ← 退出MySQL伺服器
- 使用密碼登陸mysql
mysql -u root -p
- 刪除mysql匿名使用者
select user,host from mysql.user; ← 查看使用者資訊
delete from mysql.user where user=‘‘; ← 刪除匿名使用者
select user,host from mysql.user; ← 查看使用者資訊
- 查看資料庫
show databases; ← 查看系統已存在的資料庫
drop database test; ← 刪除名為test的空資料庫
show databases; ← 查看系統已存在的資料庫
mysql查看開啟的連接埠: show variables like ‘port‘;
- 建立新使用者並為新使用者授權
grant all privileges on test.* to [email protected] identified by ‘在這裡定義密碼‘; ← 建立對test資料庫有完全操作許可權的名為centospub的使用者
建立一個可以從任何地方串連伺服器的一個完全的超級使用者,但是必須使用一個口令
mysql> grant all privileges on *.* to [email protected] identified by ’口令’
增加新使用者
格式:
grant select on 資料庫.* to 使用者名稱@登入主機 identified by “密碼”
GRANT ALL PRIVILEGES ON *.* TO [email protected] IDENTIFIED BY ’something’ WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO [email protected]”%” IDENTIFIED BY ’something’ WITH GRANT OPTION;
刪除授權:
mysql> revoke all privileges on *.* from [email protected]”%”;
mysql> delete from user where user=”root” and host=”%”;
mysql> flush privileges;
- 細粒度授權
建立一個使用者custom在特定用戶端it363.com登入,可訪問特定資料庫fangchandb
mysql >grant select, insert, update, delete, create,drop on fangchandb.* to [email protected] it363.com identified by ‘ passwd’
- 建立新資料庫
create database test; ← 建立名為test的資料庫 (注意是否可以建立這個資料庫是在上面建立新使用者的時候就決定了的)
- 使用資料庫
use test ← 串連到資料庫
show tables; ← 查看資料庫中已存在的表
- 刪除測試賬戶
revoke all privileges on *.* from [email protected]; ← 取消centospub使用者對資料庫的操作許可權
delete from mysql.user where user=‘centospub‘ and host=‘localhost‘; ← 刪除centospub使用者
select user from mysql.user where user=‘centospub‘; ← 尋找使用者centospub,確認已刪除與否
flush privileges; ← 重新整理,使以上操作生效
- 刪除資料庫
drop database name 直接刪除資料庫,不提醒
mysqladmin drop databasename 刪除資料庫前,有提示。
- 表操作
show tables; 顯示表
describe tablename; 表的詳細描述
重新命名表: mysql > alter table t1 rename t2;
- CentOS系統中mysqldump
在shell中執行下面的命令
備份資料庫 shell> mysqldump -h yourhost vi-u root -p dbname >dbname_backup.sql
恢複資料庫 shell> mysqladmin -h yourhost -u root -p create dbname
shell> mysqldump -h yourhost -u root -p dbname < dbname_backup.sql
如果只想Dump建表指令,則命令如下: shell> mysqladmin -u root -p -d databasename > a.sql
如果只想Dump插入資料的sql命令,而不需要建表命令,則命令如下: shell> mysqladmin -u root -p -t databasename > a.sql
那麼如果我只想要資料,而不想要什麼sql命令時,應該如何操作呢? mysqldump -T./ phptest driver
其 中,只有指定了-T參數才可以卸出純文字檔案,表示卸出資料的目錄,./表示目前的目錄,即與mysqldump同一目錄。如果不指定driver 表,則將卸出整個資料庫的資料。每個表會產生兩個檔案,一個為.sql檔案,包含建表執行。另一個為.txt檔案,只包含資料,且沒有sql指令。
- 可將查詢儲存在一個檔案中並告訴mysql從檔案中讀取查詢而不是等待鍵盤輸入。
可利用輸入重新導向公用程式來完成這項工作。例如,如果在檔案my_file.sql 中存放有查詢,可如下執行這些查詢:
如果您想將建表語句提前寫在sql.txt中: mysql > mysql -h yourhost -u root -p yourdatabase < sql.txt