nylas / sync-engine

:incoming_envelope: IMAP/SMTP sync system with modern APIs
https://nylas.com/docs/platform
GNU Affero General Public License v3.0
3.5k stars 354 forks source link

Error at Setting up database: inbox #400

Closed Aegefel closed 7 years ago

Aegefel commented 8 years ago

Hi, I tried to use the Nylas Sync Engine to use Nylas N1 as free but when I launch the commans sudo -H ./setup.sh I get the following error: 2016-09-24T11:34:19.422462Z mysqld_safe Logging to syslog. 2016-09-24T11:34:19.424858Z mysqld_safe Logging to '/var/log/mysql/error.log'. 2016-09-24T11:34:19.441278Z mysqld_safe A mysqld process already exists Setting up database: inbox Traceback (most recent call last): File "bin/create-db", line 85, in main() File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 488, in call return self.main(_args, _kwargs) File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 474, in main self.invoke(ctx) File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 659, in invoke ctx.invoke(self.callback, _ctx.params) File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 325, in invoke return callback(_args, _kwargs) File "bin/create-db", line 49, in main format(schema_name)) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1990, in execute connection = self.contextual_connect(close_with_result=True) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 2039, in contextual_connect self._wrap_pool_connect(self.pool.connect, None), File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 2078, in _wrap_pool_connect e, dialect, self) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1405, in _handle_dbapi_exception_noconnection exc_info File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/util/compat.py", line 202, in raise_from_cause reraise(type(exception), exception, tb=exc_tb, cause=cause) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 2074, in _wrap_pool_connect return fn() File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 376, in connect return _ConnectionFairy._checkout(self) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 713, in _checkout fairy = _ConnectionRecord.checkout(pool) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 480, in checkout rec = pool._do_get() File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 1060, in _do_get self._dec_overflow() File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/util/langhelpers.py", line 60, in exit compat.reraise(exc_type, exc_value, exc_tb) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 1057, in _do_get return self._create_connection() File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 323, in _create_connection return _ConnectionRecord(self) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 449, in init self.connection = self.connect() File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/pool.py", line 607, in connect connection = self.__pool._invoke_creator(self) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/strategies.py", line 97, in connect return dialect.connect(_cargs, _cparams) File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 385, in connect return self.dbapi.connect(_cargs, _cparams) File "/usr/local/lib/python2.7/dist-packages/MySQLdb/init.py", line 81, in Connect return Connection(_args, _kwargs) File "/usr/local/lib/python2.7/dist-packages/MySQLdb/connections.py", line 204, in init super(Connection, self).init(_args, **kwargs2) sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (1045, "Access denied for user 'root'@'localhost' (using password: YES)")

I'm on Ubuntu 16.04 and I already have mysql protected with a password on my computer Sorry for my English Aegefel

irobot0 commented 7 years ago

Hi @Aegefel, I had encountered the same problem before and I finally figured out how to solve it.

Before type in the command

$ sudo -H ./setup.sh

you should set the NYLAS_ENV environment variable IN THE SAME TERMINAL SESSION. e.g.

$ export NYLAS_ENV=dev

Note that the environment variable set here has its living scope merely inside this Terminal session, for any other Terminal session you want to interact with Nylas Sync Engine, you should export the environment variable once again, or save it in /path/to/user/.bashrc file.