ubuntu环境下mysql安装和配置
mysql安装
ubuntu下用包管理工具apt安装非常方便。
执行下面的命令即可完成安装。
# apt-get install mysql-server-5.7
完成后,启动mysql,执行:
#/etc/init.d/mysql start
启动完成,说明安装成功。
本地client连接:
#mysql
此时发现登陆不了,
执行:
#mysql -uroot -hlocalhost -p
还是登陆不了。
mysql需要做一下配置,才能正常使用。
root用户配置
执行
#/etc/init.d/mysql stop
关闭mysql.
修改配置文件/etc/mysql/mysql.conf.d/mysqld.conf
在该文件最后面添加
skip-grant-tables
启动mysql
#/etc/init.d/mysql start
连接mysql
#mysql回车
修改mysql默认root用户密码
mysql>use mysql;
mysql> UPDATE user SET Password=PASSWORD('123') WHERE User='root' AND Host='localhost';
mysql> flush privileges;
mysql> exit;
默认root用户密码设置成123
修改配置文件/etc/mysql/mysql.conf.d/mysqld.conf,注释掉下面的配置
#skip-grant-tables
启动mysql
/etc/init.d/mysql start
此时,用root用户就可以登陆了。
但是当前也仅仅是能在本机登陆。如果想从其他机器连接到该mysql服务器,还是不行。
mysql远程访问配置
默认情况下,mysql仅仅允许从本机访问,在/etc/mysql/mysql.conf.d/mysqld.conf文件可以查看,默认情况设置:
bind-address = 127.0.0.1
这就仅限于本机访问。
设置为:
bind-address = 0.0.0.0
就允许所有的机器访问,也可以设置成一个特定的IP地址。
重启mysql服务,就可以从其他机器访问mysql了。
创建一个远程访问用户
执行如下代码:
mysql> create database demo default charset utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.00 sec)
mysql> create user 'demo'@'%' identified by '123456';
Query OK, 0 rows affected (0.01 sec)
mysql> grant all on *.* to 'demo'@'%';
Query OK, 0 rows affected (0.00 sec)
mysql> show grants for 'demo'@'%';
+-----------------------------------------+
| Grants for zy@% |
+-----------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'demo'@'%' |
+-----------------------------------------+
1 row in set (0.00 sec)
mysql>
创建demo用户,并允许从所有机器访问。