`
stephen830
  • 浏览: 2969956 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Ubuntu平台安装MySQL配置字符集、远程访问、慢查询

 
阅读更多
 
Ubuntu平台安装MySQL配置字符集、远程访问、慢查询

 

1、安装MySQL

要安装 MySQL,可以在终端提示符后运行下列命令:

sudo apt-get install mysql-server mysql-client #中途会让你输入一次root用户密码

一旦安装完成,MySQL 服务器应该自动启动。

sudo start mysql #手动启动mysql
sudo stop mysql #手动停止mysql

当你修改了配置文件後,你需要重启 mysqld 才能使这些修改生效。

2.1、支持远程访问
修改/etc/mysql/my.cnf文件,将此文件中的

bind-address = 192.168.1.10 

在此行配置前面加上#,注释掉该配置。

保存并退出,这样就可以用本地的mysql客户端连接到mysql数据库上进行操作。

 

2.2、字符集改成utf-8

[mysqld]
#
# * Basic Settings
#
user        = mysql
pid-file    = /var/run/mysqld/mysqld.pid
socket        = /var/run/mysqld/mysqld.sock
port        = 3306
basedir        = /usr
datadir        = /var/lib/mysql
tmpdir        = /tmp
lc-messages-dir    = /usr/share/mysql
skip-external-locking
skip-character-set-client-handshake
character_set_client=utf8
character_set_server=utf8
# event scheduler
event_scheduler=ON
# slow query log
log_slow_queries=ON
long_query_time=1
slow_launch_time=1
slow_query_log=ON
slow_query_log_file=/var/lib/mysql/slow_queries.log

 

红色部分配置字符集为utf-8;

蓝色部分开启mysql的event服务;

绿色部分开启mysql的慢查询日志


3、给远程客户端分配访问权限
1)在命令行执行:

mysql -u root -p

(输入mysql的root密码)

2)在命令行执行以下命令,查看当前有哪些用户:

mysql> use mysql;
mysql> select host,user,password from user;

+-----------+------------------+-------------------------------------------+
| host      | user             | password                                  |
+-----------+------------------+-------------------------------------------+
| localhost | root             | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| ubuntu    | root             | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| 127.0.0.1 | root             | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| ::1       | root             | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| localhost | debian-sys-maint | *D60A18E625738F2872C93E1584B5FD295F379F63 |
+-----------+------------------+-------------------------------------------+
5 rows in set (0.00 sec)

将user为root的只保留1条记录,删除其他的root记录,然后把该root记录的host修改为%

 delete from user where user='root' and host<>'localhost';

删除host不等于localhost的全部root 记录

update user set host='%' where user='root';

将剩下的root记录的host修改为%

然后执行命令 flush privileges;

 

这样,在本地客户端上的mysql管理工具来连接服务器上的这个mysql数据库了。

 

 

3)给远程客户端授权

mysql>grant all privileges on *.* to  root@192.168.1.11  identified by '123456'

 注意: (1)192.168.1.101是欲连接到此Mysql数据库的客户端的IP地址,而不是Mysql数据库所在数据库服务器的IP地址,切记
           (2)password就是Mysql数据库root用户的password,根据实际情况需要修改

写了个程序测试下,一切OK!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics