亦大亦小如你--MySQL

寫在前面

MySQL 是個神奇的關係型數據庫,真心感受牛逼,由於作的項目比較雜,以前也碰到過 Oracle 數據庫,給個人印象是 Oracle 很臃腫繁瑣,配置多,若是是小項目用它的話感受就像是殺雞用牛刀,大材小用。可是也不是說Mysql不能用於大項目,MySQL 開元免費,是如今關係型數據庫的主流產品,網上相應的文檔和問題解決方案也會不少,意思就是好比菜鳥如我碰到了Mysql出的問題,網上基本上很全。javascript

系統環境 Debain 7
Mysql 5.6

1.MySQL 簡單操做命令

//1.登陸mysql,括號中的爲可選項,$(包括$)後面爲實際數據,-D是指定數據庫登陸
mysql (-h$host) (-P$port) -u$user -p$pwd (-D$dbname)  //地址 端口 帳號 密碼 數據庫名

//2.刪除、建立數據庫
drop database dbname; //刪除數據庫
create database dbname charset utf8   //建立數據庫

//3.刪除、建立數據庫表
drop table tablename;//刪除表
create table tablename(id int, name varchar(80)); //建立表

//4.表操做
show triggers\g / show triggers; //查看觸發器
show variables like 'character_set_database'; //查看庫編碼
desc tablename; //查看錶結構
select current_date(); //查看錶建立時間

//5.導入sql文件
use dbname;source /dbname.sql; //執行 sql 文件

//6.當前的鏈接狀況
select current_user(); //查看當前登陸帳號
show processlist; //查看當前進程
show full processlist;//查看當前所有進程
select user,host,Super_priv from mysql.user; //查看全部可鏈接用戶、地址和權限信息
(Super_priv 用戶有super權限才能夠導入數據)
grant all privileges on *.* to root@'%' identified by 'root' with grant option;flush privileges; //給root用戶遠程登陸的全部權限

2.自動導入sql文件

2.1 shell操做

#建立 createDb.sh,內容以下:

#!/bin/bash
#經過 shell 自動初始化數據庫和表結構
host=$1 #地址
port=$2 #端口
user=$3 #帳號
pwd=$4 #密碼
dbname=$5 #數據庫名
path=$6 #sql 文件路徑

mysql -h$host -P$port -u$user -p$pwd <<EOF

drop database if exists $dbname;create database $dbname charset utf8;

use $dbname;

source $path

COMMIT;
EOF

#查看 shell 的執行過程命令
sh -x ./shell //查看 shell 執行過程

2.2 expect操做

#!/usr/bin/expect -f

set timeout 10
set host [lindex $argv 0]
set port [lindex $argv 1]
set user [lindex $argv 2]
set pwd [lindex $argv 3]
set dbname [lindex $argv 4]
set path [lindex $argv 5]
set cset [lindex $argv 6] #字符編碼

spawn mysql -h$host -P$port -u$user -p
expect "Enter password: "
send "$pwd\r"

expect "mysql> "
send "drop database if exists $dbname;create database $dbname charset $cset;\r"

expect "mysql> "
send "use $dbname;\r"

expect "mysql> "
send "source $path;\r"

expect "mysql> "
send "exit\r"

interact
回頭研究再更新操做,有哪裏寫的不對的也請不吝賜教
相關文章
相關標籤/搜索