centOS安装mysql---glibc方式
写在前面:
首先,centos是自己集成mysql的。但是我要用的服务器人家没给装。
其次,centos是可以yum安装mysql的,我很高兴而且轻松的用yum把mysql安装上了。但是,运行的时候很沮丧。yum安装的mysql,当再装SQLAlchemy的时候,报了满屏的错误。我看着满屏的各种错无从下手。本来mysql就不熟。
最后,只好去mysql的网站,down下来源码包,一点一点的安装下来。整整费了我一天。下面我把这的过程记录下来,以后用就方便了。
下载mysql:
http://downloads.mysql.com/archives.php
选择一个mysql的版本,之后一定要看好,下glibc的。如:mysql-5.0.90-linux-i686-glibc23.tar.gz
本例中下载到了/media目录下,这个不是好习惯...
▲安装mysql:
下面是linux命令
- :$ sudo groupadd mysql
- :$ sudo useradd -g mysql mysql
- :$ cd /usr/local
- :$ tar zvxf /media/mysql-5.0.90-linux-i686-glibc23.tar.gz
- :$ mv mysql-5.0.90-linux-i686-glibc23 mysql
- :$ cd mysql
- :$ sudo chown -R mysql .
- :$ sudo chgrp -R mysql .
- :$ scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql
- :& cd ..
- :$ sudo chown -R root mysql .
- :$ cd mysql
- :$ sudo chown -R mysql data
- :$ bin/mysqld_safe --basedir=/usr/local/mysql --user=mysql &
至此,mysql安装成功。
因为在运行状态,我没有ctrl-c,只好再开一个ssh窗口...
▲为mysql的root用户添加密码
下面是linux命令
- cd /usr/local/mysql/bin ./mysql -u root
进入mysql后:
- mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "chang";
其实是设置了root的localhost的密码为chang
显示执行成功,然后exit退出mysql。
之后,再次登录mysql,这次要用密码了:
- cd /usr/local/mysql/bin./mysql -u root -p
输入密码chang之后,可以正常登录,如下:
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 1
Server version: 5.0.90 MySQL Community Server (GPL)
Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.
查看一下用户信息:
- mysql> select user,host,password from mysql.user;
结果如下:
+------+-----------+----------+
| user | host | password |
+------+-----------+----------+
| root | localhost | *F05D019BA3BEC01CA9FBD4141E4EA57A28EF3EDF | ← (root密码为chang)
| root | linux | | ← (root密码为空)
| root | 127.0.0.1 | | ← (root密码为空)
| | localhost | |
+------+-----------+----------+
分别更改它们的密码:
- mysql> set password for root@localhost=password('chang');
- mysql> set password for root@linux=password('chang');
- mysql> set password for root@127.0.0.1=password('chang');
再次查看用户信息会发现已经更改过来。
然后退出mysql。
▲把mysql做成服务
- sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
启动mysql服务
- sudo /etc/init.d/mysql start
这时候就可以重启机器试试了
重启后再登陆mysql,发现可以登陆。服务制作成功!
▲配置mysql
- vi /etc/my.cnf
(注释:如果没有自动生成my.cnf文件,那么:安装完的mysql包下有个support-files文件夹,其中有my-huge.cnf等,将my-huge copy一份,改名为my.cnf,将其适当地修改(当然是根据你的数据库配置)然后copy至/etc/my.cnf)
打开my.cnf后
找到[client] 添加:
default-character-set = utf8 # 默认字符集为utf8
找到[mysqld] 添加:
default-character-set = utf8 #默认字符集为utf8
init_connect = 'SET NAMES utf8' #设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行
修改好后,重新启动即可.
我这里是重启了mysql的服务:
- sudo /etc/init.d/mysql restart
(有一次找不到sock,这样重启两次服务之后居然可以了!!!汗。)
之后进入mysql,查一下是否更改了字符集:
- cd /usr/local/mysql/bin./mysql -u root -p
- mysql> show variables like 'character%';
出现下面的画面:
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
+--------------------------+----------------------------------------+
好,数据库语言完毕。
▲打开mysql的远程访问
mysql默认是不允许远程访问的。
用密码登陆mysql,可以正常登陆,但是换台机器用工具连,就报错:
ERROR 1130: Host 192.168.1.6 is not allowed to connect to this MySQL server
方法: 改表法。mysql默认是不允许远程访问的,只能在localhost访问。这个时候只要在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改成”%”
mysql -u root -p
Enter password: chang
mysql>use mysql;
mysql>update user set host = '%' where user = 'root'; //可能会报错
mysql>flush privileges;
mysql>select host,user from user where user='root';
执行完上面的,就可以远程连接了!
注释:
update user set host = '%' where user = 'root'; //这个命令执行错误时,可能会报错:
ERROR 1062 (23000): Duplicate entry '%-root' for key 1;
解决方法:
1,不用管它。呵呵。
2,改成这样执行
update user set host='%' where user='root' and host='localhost';
也就是把localhost改成了所有主机。
---------------------------------------------------
之后运行app程序,报错:
ImportError: libmysqlclient_r.so.15: cannot open shared object file: No such file or directory
解决办法是把/usr/local/mysql/lib下的
libmysqlclient_r.so.15
拷贝到/usr/lib解决。
至此,mysql安装配置完毕!
================= 我是华丽的分割线 ========================
----------------------------------------------------
■附注:
附注1: 重启和关闭mysql服务
重启mysql服务
:$ sudo /etc/init.d/mysql restart
关闭mysql服务
:$ sudo /etc/init.d/mysql stop
----------------------------------------------------
附注2: 非服务状态下,启动和停止mysql
启动mysql
代码:
:& cd /usr/local/mysql
:& bin/mysqld_safe --basedir=/usr/local/mysql --user=mysql &
停止mysql
代码:
:& cd /usr/local/mysql
:$ bin/mysqladmin -uroot -ppassw0rd shutdown
----------------------------------------------------
附注3: mysql命令行中文显示?号
mysql> set names utf8;
---------------------------------------------------
附注4: mysql的数据库存放路径
/var/lib/mysql
---------------------------------------------------
附注5: 从mysql中导出和导入数据
mysqldump 数据库名 > 文件名 #导出数据库
mysqladmin create 数据库名 #建立数据库
mysql 数据库名 < 文件名 #导入数据库
---------------------------------------------------
附注6: 修改mysql的root口令
sudo mysqladmin -u root -p password '你的新密码'
或者:括号里是新密码
use mysql;
update user set Password=password('chang') where User='root';
flush privileges;
---------------------------------------------------
附注7: 忘了mysql的root口令怎么办
sudo /etc/init.d/mysql stop
sudo mysqld_safe --skip-grant-tables &
sudo mysqladmin -u user password 'newpassword
sudo mysqladmin flush-privileges
---------------------------------------------------
附注8: 输入要登录的mysql主机
./mysql -u root -h 127.0.0.1 -p
centOS安装mysql---glibc方式的更多相关文章
- CentOS 安装MySQL rpm方式安装
MySQL源码方式安装:https://www.cnblogs.com/deverz/p/10997723.html 从最新版本的linux系统开始,默认的是 Mariadb而不是mysql!这里依旧 ...
- centOS安装Mysql指南
centOS安装Mysql指南 说明:使用操作系统centOS6.4 32位系统:mysql:mysql-5.7.10-linux-glibc2.5-i686.tar.gz; 一.准备 下载mysql ...
- centos安装 mysql
centos安装 mysql 1. 下载mysqlmysql被oracle收购后现在退出了企业版和社区版本,社区版本是开源的,企业版是收费的.社区版可以下载源码也可以下载二进制文件包.源码安装比较麻烦 ...
- 1.centOS安装Mysql
上个星期研究了一个星期的Mysql,从今天起把学到的东西整理一下. ---------------------------------------------- mysql安装本人亲试过两种安装方式, ...
- 阿里云服务器 CentOS 安装Mysql 5.6
下载:https://dev.mysql.com/downloads/file/?id=471181 第一步: 安装mysql5姿势是要先安装带有可用的mysql5系列社区版资源的rpm包 [ro ...
- CentOS安装MySQL详解 转
引言 最近某云搞活动,买了个服务器作为平时学习和测试用,新机器啥也没有,一些常用软件的安装是免不了的,于是乎想着把安装过程都详细记录下来,一是做个备忘,二是给有需要的同学作个参考. Linux上安 ...
- CentOS安装mysql、JDK、Tomcat部署环境
1.1. 安装mysql-5.6 1.1.1. 检测系统内部有没有安装其他的mysql数据库 $ rpm -qa | grep mysql 1.1.2. 如果内部有需要先删除Mysql $ yum r ...
- CentOS安装MySQL
好记性不如烂笔头,记录一下 yum list installed | grep mysql #检查是否安装了mysql yum -y remove mysql-libs.x86_64 #卸载已经安装的 ...
- centos 安装 mysql 5.6和workbench
windows下安装mysql很简单,去官网找到.msi文件,一键安装就OK了. Centos下面安装Mysql5.6其实也是蛮简单的. 注意:centos6.5默认mysql版本是5.1的 1.添加 ...
- centos安装mysql(rpm)
今天安装mysql时候出现错误MySQL conflicts with mysql-4.1.20-2 查看是否安装过mysql rpm -qa mysql 发现安装了老版本的mysql 使用rpm - ...
随机推荐
- 【01】在 Github 上编辑代码
[01]在 Github 上编辑代码 当你使用 GitHub,看一些文件(任何的文本文件或者仓库),能看到一个顶部右侧有一个小铅笔图标.点击即可编辑文档. 完成后,按照提示点击「Propose fil ...
- Couchbase III(Python Library)
Couchbase III(Python Library) 第一步 安装 使用pip安装: >pip install couchbase --quiet 确认是否安装成功: >python ...
- [luoguP2016] 战略游戏(DP)
传送门 f[i][0]表示不选当前节点,当前节点的所有儿子节点都选f[i][1]表示选当前节点,儿子节点可选可不选 #include <cstdio> #include <cstri ...
- 任务查询系统(bzoj 3932)
Description 最近实验室正在为其管理的超级计算机编制一套任务管理系统,而你被安排完成其中的查询部分.超级计算机中的 任务用三元组(Si,Ei,Pi)描述,(Si,Ei,Pi)表示任务从第Si ...
- 用 Gearman 分发 PHP 应用程序的工作负载【转载】
通过本文,了解工作分发系统 Gearman 并分发用 PHP.C.Ruby 及其他受支持语言编写的应用程序的工作负载. 尽管一个 Web 应用程序的大部分内容都与表示有关,但它的价值与竞争优势却可能体 ...
- Python()- 面向对象的组合用法
面向对象的组合用法 一个类中以另一个类的对象作为数据属性(一个类中引用另一个类的对象)一种 "有" 的关系: 比如:定义 1个人类 & 1个武器类 然后 张三 有 枪 李四 ...
- Intersection--poj1410(判断线段与矩形的关系)
http://poj.org/problem?id=1410 题目大意:给你一个线段和矩形的对角两点 如果相交就输出'T' 不想交就是'F' 注意: 1,给的矩形有可能不是左上 右下 所以要先判 ...
- final finally finalize 区别及用法
final 1,final修饰的class,代表不可以继承扩展. 2.final的方法也是不可以重写的. 3.final修饰的变量是不可以修改的.这里所谓的不可修改对于基本类型来来,的确是不可以修改. ...
- R-Tree空间索引算法的研究历程和最新进展分析
转自原文 R-Tree空间索引算法的研究历程和最新进展分析,2008 摘要:本文介绍了空间索引的概念.R-Tree数据结构和R-Tree空间索引的算法描述,并从R-Tree索引技术的优缺点对R-Tre ...
- linux下查看哪个进程占用内存多
1.用top命令 1.top top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 可以直接使用top命令后,查看%MEM的内容.可以 ...