13.1 設置更改root密碼
-
mysql安裝後root用戶(mysql的超級管理員,跟系統的root用戶是兩回事)默認是不用密碼就能登錄的,爲了安全起見,我們需要給它設置密碼.
-
1.設置root密碼
mysqladmin -uroot password '123456' #設置mysql的root密碼爲123456
mysql -uroot -p123456 #登錄mysql -
2.更改密碼
mysqladmin -uroot -p'123456' password '654321' #將mysql的root密碼更改爲654321 -
3.重置密碼
vi /etc/my.cnf
在[mysqld]中增加skip-grant (目的是讓我們能不用密碼就可登錄mysql)
/etc/init.d/mysqld restart #重啓mysql服務,讓配置生效
mysql -uroot
use mysql;
update user set password=password('123456') where user='root'; #將密碼重置爲123456
vi /etc/my.cnf //把skip-grant去掉,恢復原先配置
/etc/init.d/mysqld restart - 補充說明:
當執行mysql -uroot命令時,若系統提示"-bash: mysql: 未找到命令",表示mysql命令沒有加入到環境變量裏.這時可以用絕對路徑/usr/local/mysql/bin/mysql -uroot,或者將其加入到環境變量裏,有2個方法: - (1)臨時加入,重啓系統後失效
export PATH=$PATH:/usr/local/mysql/bin -
(2)編輯系統配置文件(永久生效)
vi /etc/profile
將以下一句加到最後,保存退出
export PATH=$PATH:/usr/local/mysql/bin - 查看系統環境變量PATH:
echo $PATH
13.2 連接mysql
- 通過sql語句來連接mysql大概有以下幾種情況:
- 1.直接本地連接.
mysql -uroot -p123456 - 2.通過IP+端口連接,可連到遠程的mysql.
mysql -uroot -p123456 -h127.0.0.1 -P3306 - 3.通過sock來連接,只適合在本機使用.
mysql -uroot -p123456 -S/tmp/mysql.sock - 4.連接同時執行sql命令,適合在shell腳本中使用.
mysql -uroot -p123456 -e "show databases;"
13.3 mysql常用命令
- 查詢數據庫
show databases; - 切換到哪個數據庫
use mysql; - 查看庫裏的表
show tables; - 查看錶裏的字段
desc tb_name; - 查看建表語句
show create table tb_name\G; #G表示讓查詢結果"豎排顯示" - 查看當前用戶
select user(); - 查看當前使用的數據庫
select database(); - 創建庫
create database db1; - 創建表
use db1;
create table t1(id
int(4),name
char(40));
create table t1(id
int(4),name
char(40))ENGINE=InnoDB DEFAULT CHARSET=utf8; - 刪除表
drop table t1; - 查看當前數據庫版本
select version(); - 查看數據庫狀態
show status; - 查看各參數(這些參數可在/etc/my.cnf中定義)
show variables;
show variables like 'max_connect%'; - 修改參數
set global max_connect_errors=1000;
注意:此處修改參數只在內存中生效,若想永久生效需在配置文件/etc/my.cnf修改. -
查看隊列[重要]
show processlist;
show full processlist; - 補充說明:
(1) mysql中的語句需要以分號(;)結尾
(2) mysql中的語句前加#號,則其後語句會被忽略(相當於註釋掉了)
(3) mysql的命令歷史文件爲/root/.mysql_history
擴展學習:
mysql5.7 root密碼更改
http://www.apelearn.com/bbs/thread-7289-1-1.html
myisam 和innodb引擎對比
http://www.pureweber.com/article/myisam-vs-innodb/
mysql 配置詳解:
http://blog.linuxeye.com/379.html
mysql調優:
http://www.aminglinux.com/bbs/thread-5758-1-1.html
同學分享的親身mysql調優經歷:
http://www.apelearn.com/bbs/thread-11281-1-1.html