MySQL 5.7 güvenli modeli değiştirdi: şimdi MySQL roototurumu gerektiriyor sudo.
Yani phpMyAdmin'in olacak değil kullanabilecektir rootkimlik.
En basit, en güvenli ve kalıcı çözüm yeni bir kullanıcı yaratacak ve gerekli ayrıcalıklara sahip olacaktır.
1. MySQL'e bağlanın
sudo mysql --user=root mysql
2. Gerçek bir şifre oluşturun
Aşağıdaki adımlarda some_passörnek şifre olarak kullanacağım . LÜTFEN, ŞİFRENİZ TARAFINDAN IT DEĞİŞTİR! SOME_PASSŞİFRE OLARAK KULLANMAYIN !
3. phpMyAdmin için bir kullanıcı oluşturun
Aşağıdaki komutları çalıştırın ( some_passistediğiniz şifreyle değiştirin ):
CREATE USER 'phpmyadmin'@'localhost' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
PhpMyAdmin'iniz yerel ana bilgisayara bağlanıyorsa, bu yeterli olmalıdır.
4. İsteğe bağlı ve güvensiz: uzak bağlantılara izin ver
Unutmayın : Uzak bir kullanıcının tüm ayrıcalıklara sahip olmasına izin vermek bir güvenlik sorunudur ve bu çoğu durumda gerekli değildir .
Bunu akılda tutarak, bu kullanıcının uzak bağlantılar sırasında aynı ayrıcalıklara sahip olmasını istiyorsanız, ek olarak çalıştırın ( some_passAdım 2'de kullanılan parola ile değiştirerek ):
CREATE USER 'phpmyadmin'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
5. phpMyAdmin'i güncelleyin
Kullanılması sudo, düzenleme /etc/dbconfig-common/phpmyadmin.confdosyası (değiştirirken aşağıdaki bölümlerde kullanıcı / şifre değerlerini güncelleyerek some_passAdım 2. kullanılan şifre ile):
# dbc_dbuser: database user
# the name of the user who we will use to connect to the database.
dbc_dbuser='phpmyadmin'
# dbc_dbpass: database user password
# the password to use with the above username when connecting
# to a database, if one is required
dbc_dbpass='some_pass'