Linux下MySQL是一種常用的數(shù)據(jù)庫,它通常被安裝在服務(wù)器上,可以提供給多個客戶端遠(yuǎn)程訪問。然而,為了保障數(shù)據(jù)庫的安全性,我們需要設(shè)置MySQL的遠(yuǎn)程訪問權(quán)限,以免不必要的SQL注入等攻擊。
設(shè)置MySQL的遠(yuǎn)程訪問權(quán)限分為以下幾個步驟:
1. 登錄MySQL
$ mysql -u root -p
2. 創(chuàng)建新用戶
mysql>CREATE USER 'newuser' IDENTIFIED BY 'password';
3. 授權(quán)新用戶
mysql>GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' IDENTIFIED BY 'password';
4. 刷新權(quán)限表
mysql>FLUSH PRIVILEGES;
以上命令中:
第1步,我們使用root用戶登錄MySQL。
第2步,我們創(chuàng)建了一個名為“newuser”,密碼為“password”的新用戶。
第3步,我們授權(quán)了這個新用戶擁有所有數(shù)據(jù)庫的所有權(quán)限,并且可以通過任何IP地址進(jìn)行遠(yuǎn)程訪問,即“'newuser'@'%'”。
第4步,我們刷新MySQL的權(quán)限表,以確保新的權(quán)限設(shè)置生效。
除此之外, 如果您發(fā)現(xiàn)新用戶只能在本地訪問MySQL,可以在mysql庫的user表中手動修改host字段為“$\“即可。
update `mysql`.`user` set `host` = '$\'' where user = 'newuser';
這樣,我們就可以用MySQL Workbench等工具連接到遠(yuǎn)程服務(wù)器上的MySQL,通過新用戶進(jìn)行管理操作了。