Ubuntu18.04 安装MySQL
1.安装MySQL
在 Ubuntu 18.04 中,默认情况下,只有最新版本的 MySQL 包含在 APT 软件包存储库中,要安装它,只需更新服务器上的包索引并安装默认包 apt-get。
#命令1
sudo apt-get update
#命令2
sudo apt-get install mysql-server
配置MySQL
默认的MySQL安装之后根用户是没有密码的,所以首先用根用户进入:
sudo mysql -u root
在这里之所以用-u root是因为我现在是一般用户(firehare),如果不加-u root的话,mysql会以为是firehare在登录。注意,我在这里没有进入根用户模式,因为没必要。一般来说,对mysql中的数据库进行操作,根本没必要进入根用户模式,只有在设置时才有这种可能。
进入mysql之后,最要紧的就是要设置Mysql中的root用户密码了,否则,Mysql服务无安全可言了。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "admin";
注意,我这儿用的是admin做为root用户的密码,但是该密码是不安全的,请大家最好使用大小写字母与数字混合的密码,且不少于8位。
这样的话,就设置好了MySQL中的root用户密码了,然后就用root用户建立你所需要的数据库。我这里就以zhang为例:
mysql>CREATE DATABASE zhang;
mysql>GRANT ALL PRIVILEGES ON zhang.* TO zhang_root@localhost IDENTIFIED BY "123456";
这样就建立了一个zhang_roots的用户,它对数据库zhang有着全部权限。以后就用zhang_root来对zhang数据库进行管理,而无需要再用root用户了,而该用户的权限也只被限定在xoops数据库中。
问题: 以普通用户权限运行的程序没法使用数据。
解决方法;
1. sudo vim /etc/mysql/my.cnf
增加
[mysqld]
skip-grant-tables
#忽略密码授权
2. $ sudo service mysql restart
3. 测试
$ mysql -u root -p
输入密码
ok!
4.登陆后,修改root密码:
use mysql;
update mysql.user set password=PASSWORD('YOUR_PASSWORD') where user='root';
5.sudo身份打开 /etc/mysql/my.cnf
在【mysqld】节点下注释如下代码:
#skip-grant-tables
6. 重启mariadb
sudo service mysql restart