CentOS安裝mysql

一、命令安裝mysql
# yum install mysql mysql-server mysql-devel -y
最後提示 Complete!  表示安裝成功

二、查看是否生成了mysqld服務, 並設置隨機啓動
# chkconfig --list |grep mysql 

數字代碼服務器啓動級別,off  表明不隨機啓動mysqld服務,on表明隨機啓動服務
咱們須要設置mysqld隨機啓動,執行下面命令進行設置
# chkconfig mysqld on 
這樣的結果表明正常 
# chkconfig --list |grep mysql   
mysql


三、啓動mysqld服務
執行以下命令進行啓動,兩種方法均可以:
# /etc/init.d/mysqld start     
# service mysqld start 

啓動後,ps一下,看下進程是否起來 
# ps -ef |grep mysql|grep -v grep 
root      1582     1  0 23:26 pts/0    00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql
mysql     1684  1582  1 23:26 pts/0    00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock
根據進程信息能夠看到,mysql的數據庫data目錄是 /var/lib/mysql ,錯誤日誌文件是  /var/log/mysqld.log

查看都有哪些庫
# cd /var/lib/mysql 
# ls -l sql

發現有兩個庫(test和mysql),都是mysql默認自帶的。

查看佔用端口,默認佔用3306端口
# netstat -nutlp | grep mysql
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      1684/mysqld  

四、中止mysqld服務
執行以下命令進行中止,兩種方法均可以:
# /etc/init.d/mysqld stop   
# service mysqld stop

五、重啓mysqld服務
執行以下命令進行重啓,兩種方法均可以:
# /etc/init.d/mysqld restart
# service mysqld srestart

六、命令行測試鏈接mysql ,後續能夠在命令行中直接管理數據庫
直接執行,yum安裝的mysql,本地root密碼默認爲空
# mysql數據庫

七、建立root管理員服務器

# mysqladmin -u root password "password"socket

# mysql -u root -ptcp

 

八、忘記密碼ide

service mysqld stop
mysqld_safe --user=root --skip-grant-tables
mysql -u root
use mysql
update user set password=password("666666") where user="root";
flush privileges測試

 

九、幾個重要目錄.net

(a)數據庫目錄
/var/lib/mysql/
(b)配置文件
/usr/share /mysql(mysql.server命令及配置文件)
(c)相關命令
/usr/bin(mysqladmin mysqldump等命令)
(d)啓動腳本
/etc/rc.d/init.d/(啓動腳本文件mysql的目錄)命令行

十、用戶管理和受權數據庫權限等

登陸root用戶,新建test用戶

# mysql -u root -p

#輸入root用戶的密碼

mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));

注意:此處的"localhost",是指該用戶只能在本地登陸,不能在另一臺機器上遠程登陸。若是想遠程登陸的話,將"localhost"改成"%",表示在任何一臺電腦上均可以登陸。也能夠指定某臺機器能夠遠程登陸。

 

受權格式:grant 權限 on 數據庫.* to 用戶名@登陸主機 identified by "密碼"; 

  2.1 登陸MYSQL(有ROOT權限),這裏以ROOT身份登陸:

  @>mysql -u root -p

  @>密碼

  2.2 首先爲用戶建立一個數據庫(testDB):

  mysql>create database testDB;

  2.3 受權test用戶擁有testDB數據庫的全部權限(某個數據庫的全部權限):

   mysql>grant all privileges on testDB.* to test@localhost identified by '1234';

   mysql>flush privileges;//刷新系統權限表

  格式:grant 權限 on 數據庫.* to 用戶名@登陸主機 identified by "密碼"; 

  2.4 若是想指定部分權限給一用戶,能夠這樣來寫:

  mysql>grant select,update on testDB.* to test@localhost identified by '1234';

  mysql>flush privileges; //刷新系統權限表

  2.5 受權test用戶擁有全部數據庫的某些權限:   

  mysql>grant select,delete,update,create,drop on *.* to test@"%" identified by "1234";

     //test用戶對全部數據庫都有select,delete,update,create,drop 權限。

  //@"%" 表示對全部非本地主機受權,不包括localhost。

 //對localhost受權:加上一句grant all privileges on testDB.* to test@localhost identified by '1234';便可。

相關文章
相關標籤/搜索